diff --git a/middleware/auth/jwt.go b/middleware/auth/jwt.go index b49ba0d..f71951f 100644 --- a/middleware/auth/jwt.go +++ b/middleware/auth/jwt.go @@ -57,9 +57,16 @@ func WithAllow(paths ...string) Option { } } -func WithClaims(claims reflect.Type) Option { +func WithClaims(claims any) Option { return func(o *options) { - o.claims = claims + if tv, ok := claims.(reflect.Type); ok { + o.claims = tv + } else { + o.claims = reflect.TypeOf(claims) + if o.claims.Kind() == reflect.Ptr { + o.claims = o.claims.Elem() + } + } } }