router.go 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. package routers
  2. import (
  3. "eta/eta_mini_ht_api/controllers/media"
  4. "eta/eta_mini_ht_api/controllers/report"
  5. "eta/eta_mini_ht_api/controllers/user"
  6. "eta/eta_mini_ht_api/middleware"
  7. "github.com/beego/beego/v2/server/web"
  8. "github.com/beego/beego/v2/server/web/filter/cors"
  9. "time"
  10. )
  11. func init() {
  12. web.InsertFilter("*", web.BeforeRouter, cors.Allow(&cors.Options{
  13. AllowAllOrigins: true, // 允许所有来源的请求
  14. AllowMethods: []string{"GET", "POST", "PUT", "DELETE", "OPTIONS"},
  15. AllowHeaders: []string{"Origin", "Authorization", "Access-Control-Allow-Origin", "Access-Control-Allow-Headers", "Content-Type"},
  16. ExposeHeaders: []string{"Content-Length"},
  17. AllowCredentials: true,
  18. MaxAge: 12 * time.Hour,
  19. }))
  20. //增加授权拦截
  21. web.InsertFilter("*", web.BeforeRouter, middleware.AuthMiddleware())
  22. ns := web.NewNamespace("/htapi",
  23. web.NSNamespace("/user",
  24. web.NSInclude(
  25. &user.UserController{},
  26. ),
  27. ),
  28. web.NSNamespace("/auth",
  29. web.NSInclude(
  30. &user.AuthController{},
  31. ),
  32. ),
  33. web.NSNamespace("/report",
  34. web.NSInclude(
  35. &report.ReportController{},
  36. ),
  37. ),
  38. web.NSNamespace("/media",
  39. web.NSInclude(
  40. &media.MediaController{},
  41. ),
  42. ),
  43. web.NSNamespace("/analyst",
  44. web.NSInclude(
  45. &user.AnalystController{},
  46. ),
  47. ),
  48. )
  49. web.AddNamespace(ns)
  50. }