bootAdmin.go 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. package boot
  2. import (
  3. "gfast/library/service"
  4. "github.com/goflyfox/gtoken/gtoken"
  5. "github.com/gogf/gf/frame/g"
  6. )
  7. var AdminGfToken *gtoken.GfToken
  8. func initAdmin() {
  9. //无需验证权限的用户id
  10. service.NotCheckAuthAdminIds = g.Cfg().GetInts("adminInfo.notCheckAuthAdminIds")
  11. //后端分页长度配置
  12. service.AdminPageNum = g.Cfg().GetInt("adminInfo.pageNum")
  13. //后端数据加密密钥
  14. service.AdminEncryptKey = g.Cfg().GetString("adminInfo.encryptKey")
  15. // 设置并启动后台gtoken处理
  16. initAdminGfToken()
  17. }
  18. func initAdminGfToken() {
  19. //多端登陆配置
  20. service.AdminMultiLogin = g.Cfg().GetBool("gToken.MultiLogin")
  21. AdminGfToken = &gtoken.GfToken{
  22. CacheMode: g.Cfg().GetInt8("gToken.CacheMode"),
  23. CacheKey: g.Cfg().GetString("gToken.CacheKey"),
  24. Timeout: g.Cfg().GetInt("gToken.Timeout"),
  25. MaxRefresh: g.Cfg().GetInt("gToken.MaxRefresh"),
  26. TokenDelimiter: g.Cfg().GetString("gToken.TokenDelimiter"),
  27. EncryptKey: g.Cfg().GetBytes("gToken.EncryptKey"),
  28. AuthFailMsg: g.Cfg().GetString("gToken.AuthFailMsg"),
  29. MultiLogin: service.AdminMultiLogin,
  30. LoginPath: "/sysLogin/login",
  31. LoginBeforeFunc: service.AdminLogin,
  32. LoginAfterFunc: service.LoginAfter,
  33. LogoutPath: "/sysLogin/logout",
  34. AuthPaths: g.SliceStr{"/system/*"},
  35. AuthAfterFunc: service.AuthAfterFunc,
  36. LogoutBeforeFunc: service.LoginOut,
  37. }
  38. AdminGfToken.Start()
  39. }