【发布时间】:2016-04-07 07:24:30
【问题描述】:
我在 golang 中使用 jwt-go 库,并使用 HS512 算法对令牌进行签名。我想确保令牌有效并且文档中的示例是这样的:
token, err := jwt.Parse(myToken, func(token *jwt.Token) (interface{}, error) {
return myLookupKey(token.Header["kid"])
})
if err == nil && token.Valid {
fmt.Println("Your token is valid. I like your style.")
} else {
fmt.Println("This token is terrible! I cannot accept this.")
}
我知道myToken 是字符串标记,keyFunc 传递了解析的标记,但我不明白myLookupKey 函数应该做什么?,token.Header 没有kid 值,当我将它打印到控制台时,甚至认为令牌包含我放入的所有数据,token.Valid 总是错误的。 这是一个错误吗?如何验证令牌是否有效?
【问题讨论】: