I am currently working on a Golang application.I receive a JWT token from the client side and, in Go I need to decode that token and get the information: user, name, etc. I was checking the libraries that are available to handle JWT tokens and I came down to this one, but I don't see how to simply make what I need. I have the token and I need to decode the info into a map or at least a json. Where can I find a guide of how to do it? Thank you!
3条回答 默认 最新
- duanhuren5581 2017-07-31 06:08关注
Function
jwt.ParseWithClaims
accept an interface ofjwt.Claims
as the second argument. Besides struct-based custom claims, the package also providesmap
-based claims, i.e.jwt.MapClaims
. So, you can simply decode the token into aMapClaims
, e.g.tokenString := "<YOUR TOKEN STRING>" claims := jwt.MapClaims{} token, err := jwt.ParseWithClaims(tokenString, claims, func(token *jwt.Token) (interface{}, error) { return []byte("<YOUR VERIFICATION KEY>"), nil }) // ... error handling // do something with decoded claims for key, val := range claims { fmt.Printf("Key: %v, value: %v ", key, val) }
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报