2 回答
TA贡献1809条经验 获得超8个赞
尝试这个:
type jwtClaims struct {
Iss string `json:"iss"`
Azp string `json:"azp"`
Aud string `json:"aud"`
Sub string `json:"sub"`
Hd string `json:"hd"`
Email string `json:"email"`
EmailVerified bool `json:"email_verified"`
AtHash string `json:"at_hash"`
Nonce string `json:"nonce"`
Iat int `json:"iat"`
Exp int `json:"exp"`
}
func extractJwtClaims(token string) (*jwtClaims, error) {
tokenStruct := &jwtClaims{}
jwtParts := strings.Split(token, ".")
out, _ := base64.RawURLEncoding.DecodeString(jwtParts[1])
err := json.Unmarshal(out, &tokenStruct)
if err != nil {
return nil, err
}
return tokenStruct, nil
}
func main() {
token, _ := extractJwtClaims(tok.id_token)
}
TA贡献1772条经验 获得超5个赞
我得到了“id_token”,就像下面的代码一样。
import "golang.org/x/oauth2"
func GetIDTokenWithTokenInfo(tokenInfo *oauth2.Token) string {
rawIDToken := tokenInfo.Extra("id_token").(string)
return rawIDToken
}
- 2 回答
- 0 关注
- 180 浏览
添加回答
举报