mirror of
https://github.com/get-drexa/drive.git
synced 2025-12-05 07:41:39 +00:00
24 lines
671 B
Go
24 lines
671 B
Go
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)
|
|
}
|