28 lines
608 B
Go
28 lines
608 B
Go
package middleware
|
|
|
|
import (
|
|
"github.com/gofiber/fiber/v2"
|
|
"go.uber.org/zap"
|
|
"hub_admin_backend_service/internal/models"
|
|
)
|
|
|
|
type MiddleWare struct {
|
|
logger *zap.Logger
|
|
}
|
|
|
|
func NewMiddleware(logger *zap.Logger) *MiddleWare {
|
|
return &MiddleWare{
|
|
logger: logger,
|
|
}
|
|
}
|
|
|
|
func (mw *MiddleWare) ExtractUserID(ctx *fiber.Ctx) (string, bool) {
|
|
id, ok := ctx.Context().UserValue(models.AuthJWTDecodedUserIDKey).(string)
|
|
return id, ok
|
|
}
|
|
|
|
func (mw *MiddleWare) ExtractToken(ctx *fiber.Ctx) (string, bool) {
|
|
token, ok := ctx.Context().UserValue(models.AuthJWTDecodedAccessTokenKey).(string)
|
|
return token, ok
|
|
}
|