token.go 1013 B

12345678910111213141516171819202122232425262728293031323334353637
  1. /*
  2. * @desc:token options
  3. * @company:云南奇讯科技有限公司
  4. * @Author: yixiaohu
  5. * @Date: 2022/3/8 16:02
  6. */
  7. package model
  8. import (
  9. "github.com/gogf/gf/v2/frame/g"
  10. )
  11. const (
  12. CacheModelMem = "memory"
  13. CacheModelRedis = "redis"
  14. )
  15. type TokenOptions struct {
  16. // server name
  17. ServerName string `json:"serverName"`
  18. // 缓存key (每创建一个实例CacheKey必须不相同)
  19. CacheKey string `json:"cacheKey"`
  20. // 超时时间 默认10天(秒)
  21. Timeout int64 `json:"timeout"`
  22. // 缓存刷新时间 默认5天(秒)
  23. // 处理携带token的请求时当前时间大于超时时间并小于缓存刷新时间时token将自动刷新即重置token存活时间
  24. // MaxRefresh值为0时,token将不会自动刷新
  25. MaxRefresh int64 `json:"maxRefresh"`
  26. // 是否允许多点登录
  27. MultiLogin bool `json:"multiLogin"`
  28. // Token加密key 32位
  29. EncryptKey []byte `json:"encryptKey"`
  30. // 拦截排除地址
  31. ExcludePaths g.SliceStr `json:"excludePaths"`
  32. CacheModel string `json:"cacheModel"`
  33. }