mirror of
https://github.com/casdoor/casdoor.git
synced 2025-05-23 10:45:47 +08:00
fix: missing parameter type_token_hint in IntrospectToken() (#2812)
* fix: missing parameter type_token_hint in IntrospectToken(); fix key token type
This commit is contained in:
parent
96812f676b
commit
a19060c7cb
@ -317,7 +317,8 @@ func (c *ApiController) IntrospectToken() {
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
token, err := object.GetTokenByTokenValue(tokenValue)
|
tokenTypeHint := c.Input().Get("token_type_hint")
|
||||||
|
token, err := object.GetTokenByTokenValue(tokenValue, tokenTypeHint)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
c.ResponseTokenError(err.Error())
|
c.ResponseTokenError(err.Error())
|
||||||
return
|
return
|
||||||
|
@ -137,21 +137,24 @@ func GetTokenByRefreshToken(refreshToken string) (*Token, error) {
|
|||||||
return &token, nil
|
return &token, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func GetTokenByTokenValue(tokenValue string) (*Token, error) {
|
func GetTokenByTokenValue(tokenValue, tokenTypeHint string) (*Token, error) {
|
||||||
token, err := GetTokenByAccessToken(tokenValue)
|
switch tokenTypeHint {
|
||||||
if err != nil {
|
case "access_token":
|
||||||
return nil, err
|
token, err := GetTokenByAccessToken(tokenValue)
|
||||||
}
|
if err != nil {
|
||||||
if token != nil {
|
return nil, err
|
||||||
return token, nil
|
}
|
||||||
}
|
if token != nil {
|
||||||
|
return token, nil
|
||||||
token, err = GetTokenByRefreshToken(tokenValue)
|
}
|
||||||
if err != nil {
|
case "refresh_token":
|
||||||
return nil, err
|
token, err := GetTokenByRefreshToken(tokenValue)
|
||||||
}
|
if err != nil {
|
||||||
if token != nil {
|
return nil, err
|
||||||
return token, nil
|
}
|
||||||
|
if token != nil {
|
||||||
|
return token, nil
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil, nil
|
return nil, nil
|
||||||
|
Loading…
x
Reference in New Issue
Block a user