1.引入包"github.com/dgrijalva/jwt-go"
2.設(shè)置token并返回
func setToken() string {
token := jwt.New(jwt.SigningMethodHS256)
claims := make(jwt.MapClaims)
claims[“exp”] = time.Now().Add(time.Hour * time.Duration(1)).Unix() // 設(shè)置超時(shí)時(shí)間
claims[“iat”] = time.Now().Unix()
token.Claims = claims
tokenString, err := token.SignedString([]byte(“mobile”))
if err != nil {
return “”
}
return tokenString
}
3.獲取校驗(yàn)token
token, err := request.ParseFromRequest(c.Request, request.AuthorizationHeaderExtractor, func(token *jwt.Token) (i interface{}, e error) {
return []byte(“mobile”), nil
})
if err == nil {
if token.Valid {
// token有效可以進(jìn)行其他操作
} else {
fmt.Println(“Token is not vaild”) // token無(wú)效
}
} else {
fmt.Println( “unauthorized access to this resource”) // 未找到token
}