mirror of
https://github.com/go-kratos/kratos.git
synced 2025-11-06 08:59:18 +02:00
Update jwt.go (#2016)
This commit is contained in:
@@ -104,19 +104,22 @@ func Server(keyFunc jwt.Keyfunc, opts ...Option) middleware.Middleware {
|
||||
tokenInfo, err = jwt.Parse(jwtToken, keyFunc)
|
||||
}
|
||||
if err != nil {
|
||||
if ve, ok := err.(*jwt.ValidationError); ok {
|
||||
if ve.Errors&jwt.ValidationErrorMalformed != 0 {
|
||||
return nil, ErrTokenInvalid
|
||||
} else if ve.Errors&(jwt.ValidationErrorExpired|jwt.ValidationErrorNotValidYet) != 0 {
|
||||
return nil, ErrTokenExpired
|
||||
} else {
|
||||
return nil, ErrTokenParseFail
|
||||
}
|
||||
ve, ok := err.(*jwt.ValidationError)
|
||||
if !ok {
|
||||
return nil, errors.Unauthorized(reason, err.Error())
|
||||
}
|
||||
return nil, errors.Unauthorized(reason, err.Error())
|
||||
} else if !tokenInfo.Valid {
|
||||
if ve.Errors&jwt.ValidationErrorMalformed != 0 {
|
||||
return nil, ErrTokenInvalid
|
||||
}
|
||||
if ve.Errors&(jwt.ValidationErrorExpired|jwt.ValidationErrorNotValidYet) != 0 {
|
||||
return nil, ErrTokenExpired
|
||||
}
|
||||
return nil, ErrTokenParseFail
|
||||
}
|
||||
if !tokenInfo.Valid {
|
||||
return nil, ErrTokenInvalid
|
||||
} else if tokenInfo.Method != o.signingMethod {
|
||||
}
|
||||
if tokenInfo.Method != o.signingMethod {
|
||||
return nil, ErrUnSupportSigningMethod
|
||||
}
|
||||
ctx = NewContext(ctx, tokenInfo.Claims)
|
||||
|
||||
Reference in New Issue
Block a user