- 将main.go中的初始化逻辑提取到新的app包中 - 创建bootstrap包来处理配置加载和数据库初始化 - 添加middleware包来管理CORS中间件 - 创建router包来处理路由配置 - 简化main函数,只保留应用启动逻辑 - 使用依赖注入模式组织服务和处理器
18 lines
448 B
Go
18 lines
448 B
Go
package middleware
|
|
|
|
import "github.com/gin-gonic/gin"
|
|
|
|
func CORS() gin.HandlerFunc {
|
|
return func(c *gin.Context) {
|
|
c.Writer.Header().Set("Access-Control-Allow-Origin", "*")
|
|
c.Writer.Header().Set("Access-Control-Allow-Methods", "GET, POST, PUT, DELETE, OPTIONS")
|
|
c.Writer.Header().Set("Access-Control-Allow-Headers", "Content-Type, Authorization")
|
|
|
|
if c.Request.Method == "OPTIONS" {
|
|
c.AbortWithStatus(204)
|
|
return
|
|
}
|
|
c.Next()
|
|
}
|
|
}
|