main.go 1.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. package main
  2. import (
  3. "context"
  4. "encoding/json"
  5. "fmt"
  6. "github.com/go-redis/redis"
  7. "standard/token/avata/generatetoken"
  8. "standard/token/avata/model"
  9. "standard/token/avata/validatetoken"
  10. )
  11. func main() {
  12. client := redis.NewClient(&redis.Options{
  13. Addr: "192.168.1.7:6379", // use default Addr
  14. Password: "", // no password set
  15. DB: 0, // use default DB
  16. })
  17. context1 := "123"
  18. //获取token
  19. tokenInfo, err := generatetoken.GenerateTokenEntity(context1)
  20. if err != nil {
  21. fmt.Println(err.Error())
  22. return
  23. }
  24. fmt.Println(tokenInfo)
  25. tokenByte, _ := json.Marshal(tokenInfo)
  26. //将token存入redis
  27. client.Set(context.Background(), context1, string(tokenByte), 0)
  28. //从token获取id
  29. id, _ := validatetoken.ParseIdFromToken(model.TokenTypeAccess, tokenInfo.Token)
  30. fmt.Println(id)
  31. //从redis取出token
  32. result, _ := client.Get(context.Background(), id).Result()
  33. var authinfo model.OauthToken
  34. json.Unmarshal([]byte(result), &authinfo)
  35. validatetoken.ValidateToken(model.TokenTypeAccess, &authinfo)
  36. }