refactor: introduce reqctx pkg for request context

This commit is contained in:
2025-12-04 00:48:43 +00:00
parent 57167d5715
commit 539b15dcb7
4 changed files with 29 additions and 19 deletions

View File

@@ -0,0 +1,23 @@
package reqctx
import (
"errors"
"github.com/gofiber/fiber/v2"
)
const authenticatedUserKey = "authenticatedUser"
var ErrUnauthenticatedRequest = errors.New("unauthenticated request")
// AuthenticatedUser returns the authenticated user from the given fiber context.
// Returns ErrUnauthenticatedRequest if not authenticated.
// The caller must type assert the returned value to the appropriate user type.
func AuthenticatedUser(c *fiber.Ctx) any {
return c.Locals(authenticatedUserKey)
}
// SetAuthenticatedUser sets the authenticated user in the fiber context.
func SetAuthenticatedUser(c *fiber.Ctx, user interface{}) {
c.Locals(authenticatedUserKey, user)
}