jwt.go 572 B

1234567891011121314151617181920212223
  1. package tools
  2. import (
  3. "github.com/dgrijalva/jwt-go"
  4. )
  5. const SECRET = "taoshihan"
  6. func MakeToken(obj map[string]interface{}) (string, error) {
  7. token := jwt.NewWithClaims(jwt.SigningMethodHS256, jwt.MapClaims(obj))
  8. tokenString, err := token.SignedString([]byte(SECRET))
  9. return tokenString, err
  10. }
  11. func ParseToken(tokenStr string) map[string]interface{} {
  12. token, err := jwt.Parse(tokenStr, func(token *jwt.Token) (i interface{}, e error) {
  13. return []byte(SECRET), nil
  14. })
  15. if err != nil {
  16. return nil
  17. }
  18. finToken := token.Claims.(jwt.MapClaims)
  19. return finToken
  20. }