main.go 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. package main
  2. import (
  3. _ "shudao-chat-go/routers"
  4. "shudao-chat-go/controllers"
  5. "shudao-chat-go/utils"
  6. beego "github.com/beego/beego/v2/server/web"
  7. "github.com/beego/beego/v2/server/web/filter/cors"
  8. )
  9. func main() {
  10. beego.BConfig.CopyRequestBody = true
  11. // 注册认证中间件
  12. beego.InsertFilter("*", beego.BeforeRouter, utils.AuthMiddleware)
  13. beego.InsertFilter("*", beego.BeforeExec, utils.AuthMiddleware)
  14. // CORS配置
  15. beego.InsertFilter("*", beego.BeforeRouter, cors.Allow(&cors.Options{
  16. AllowOrigins: []string{"*"},
  17. AllowMethods: []string{"GET", "POST", "PUT", "DELETE", "OPTIONS"},
  18. AllowHeaders: []string{"Origin", "Authorization", "Access-Control-Allow-Origin", "Access-Control-Allow-Headers", "Content-Type", "token"},
  19. ExposeHeaders: []string{"Content-Length", "Access-Control-Allow-Origin", "Access-Control-Allow-Headers", "Content-Type"},
  20. AllowCredentials: true,
  21. }))
  22. // 静态文件路径
  23. beego.SetStaticPath("/assets", "assets")
  24. beego.SetStaticPath("/static", "static")
  25. beego.SetStaticPath("/src", "assets")
  26. // 启动心跳任务
  27. controllers.StartChromaSearchHeartbeatTask()
  28. beego.Run()
  29. }