package handlers import ( "ai_scheduler/pkg/types" "github.com/gin-gonic/gin" swaggerFiles "github.com/swaggo/files" ginSwagger "github.com/swaggo/gin-swagger" ) // SetupRoutes 设置路由 func SetupRoutes(routerService types.RouterService) *gin.Engine { r := gin.Default() // 添加CORS中间件 r.Use(func(c *gin.Context) { c.Header("Access-Control-Allow-Origin", "*") c.Header("Access-Control-Allow-Methods", "GET, POST, PUT, DELETE, OPTIONS") c.Header("Access-Control-Allow-Headers", "Content-Type, Authorization") if c.Request.Method == "OPTIONS" { c.AbortWithStatus(204) return } c.Next() }) // 创建处理器 chatHandler := NewChatHandler(routerService) // API路由组 v1 := r.Group("/api/v1") { v1.POST("/chat", chatHandler.Chat) } // Swagger文档 r.GET("/swagger/*any", ginSwagger.WrapHandler(swaggerFiles.Handler)) return r }