router.go 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990
  1. package routers
  2. import (
  3. "eta/eta_mini_ht_api/controllers"
  4. "eta/eta_mini_ht_api/controllers/media"
  5. "eta/eta_mini_ht_api/controllers/product"
  6. "eta/eta_mini_ht_api/controllers/report"
  7. "eta/eta_mini_ht_api/controllers/sys"
  8. "eta/eta_mini_ht_api/controllers/user"
  9. "eta/eta_mini_ht_api/controllers/web_hook"
  10. "eta/eta_mini_ht_api/middleware"
  11. "github.com/beego/beego/v2/server/web"
  12. "github.com/beego/beego/v2/server/web/filter/cors"
  13. "time"
  14. )
  15. func init() {
  16. web.InsertFilter("*", web.BeforeRouter, cors.Allow(&cors.Options{
  17. AllowAllOrigins: true, // 允许所有来源的请求
  18. AllowMethods: []string{"GET", "POST", "PUT", "DELETE", "OPTIONS"},
  19. AllowHeaders: []string{"Origin", "Authorization", "Access-Control-Allow-Origin", "Access-Control-Allow-Headers", "Content-Type"},
  20. ExposeHeaders: []string{"Content-Length"},
  21. AllowCredentials: true,
  22. MaxAge: 12 * time.Hour,
  23. }))
  24. //增加授权拦截
  25. web.InsertFilter("*", web.BeforeRouter, middleware.AuthMiddleware())
  26. web.InsertFilter("/htapi/webhook/*", web.BeforeRouter, middleware.WebHookAuthMiddleware())
  27. ns := web.NewNamespace("/htapi",
  28. web.NSNamespace("/user",
  29. web.NSInclude(
  30. &user.UserController{},
  31. &user.SubscribeController{},
  32. ),
  33. ),
  34. web.NSNamespace("/auth",
  35. web.NSInclude(
  36. &user.AuthController{},
  37. ),
  38. ),
  39. web.NSNamespace("/account",
  40. web.NSInclude(
  41. &user.AccountController{},
  42. ),
  43. ),
  44. web.NSNamespace("/report",
  45. web.NSInclude(
  46. &report.ReportController{},
  47. ),
  48. ),
  49. web.NSNamespace("/media",
  50. web.NSInclude(
  51. &media.MediaController{},
  52. ),
  53. ),
  54. web.NSNamespace("/analyst",
  55. web.NSInclude(
  56. &user.AnalystController{},
  57. ),
  58. ),
  59. web.NSNamespace("/webhook ",
  60. web.NSInclude(
  61. &web_hook.HTFuturesAccountController{},
  62. ),
  63. ),
  64. web.NSNamespace("/product",
  65. web.NSInclude(
  66. &product.ProductController{},
  67. ),
  68. ),
  69. web.NSNamespace("/order",
  70. web.NSInclude(
  71. &user.OrderController{},
  72. ),
  73. ),
  74. web.NSNamespace("/ws",
  75. web.NSInclude(
  76. &controllers.WebSocketController{},
  77. ),
  78. ),
  79. web.NSNamespace("/system",
  80. web.NSInclude(
  81. &sys.SysController{},
  82. ),
  83. ),
  84. )
  85. web.AddNamespace(ns)
  86. }