main.go 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. package main
  2. import (
  3. "context"
  4. "dashoo.cn/micro/app/handler"
  5. "dashoo.cn/opms_libary/micro_srv"
  6. "github.com/gogf/gf/frame/g"
  7. "github.com/smallnest/rpcx/protocol"
  8. )
  9. func main() {
  10. srvAddr := g.Config().GetString("setting.bind-addr")
  11. basePath := g.Config().GetString("setting.srv-name")
  12. // 创建总服务包
  13. s := micro_srv.CreateAndInitService(basePath)
  14. // 注册服务对象
  15. s.RegisterName("Auth", new(handler.AuthHandler), "")
  16. s.RegisterName("User", new(handler.UserHandler), "")
  17. s.RegisterName("Menu", new(handler.MenuHandler), "")
  18. s.RegisterName("Dept", new(handler.DeptHandler), "")
  19. s.RegisterName("Role", new(handler.RoleHandler), "")
  20. s.RegisterName("Dict", new(handler.DictHandler), "")
  21. // 注册文件处理Service对象
  22. //dynamic.BeanFactory.BeanRegister(service.NewRoleService())
  23. // 注册auth处理
  24. s.AuthFunc = handleAuth
  25. // 运行服务
  26. if err := s.Serve("tcp", srvAddr); err != nil {
  27. g.Log().Fatal(err)
  28. }
  29. }
  30. // AuthExcludePaths 设定不需要认证的路径
  31. var AuthExcludePaths = []string{
  32. "/Auth/Login",
  33. "/Role/GetRoleList",
  34. "/Common/GetCaptchaImg",
  35. "/Model/*",
  36. "/Organize/GetOrgTreeList",
  37. "/User/SendResetPasswordEmail",
  38. "/User/ResetPasswordFromEmail",
  39. }
  40. // 处理Auth
  41. func handleAuth(ctx context.Context, req *protocol.Message, token string) error {
  42. // token拦截器
  43. err := micro_srv.HandleAuth(ctx, req, token, AuthExcludePaths)
  44. return err
  45. }