Update jwt.go (#2016)

status-code-override
songzhibin97 3 years ago committed by chenzhihui
parent a5a4fd2e0d
commit 9abcff9d30
  1. 25
      middleware/auth/jwt/jwt.go

@ -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)

Loading…
Cancel
Save