Appearance
Day 18 - 中间件
中间件定义
go
func Logger() gin.HandlerFunc {
return func(c *gin.Context) {
// 前置处理
start := time.Now()
c.Next() // 执行后续处理
// 后置处理
fmt.Println(time.Since(start))
}
}
// 使用
r.Use(Logger())内置中间件
go
r.Use(gin.Logger())
r.Use(gin.Recovery())
r.Use(cors.Default())自定义认证中间件
go
func AuthMiddleware() gin.HandlerFunc {
return func(c *gin.Context) {
token := c.GetHeader("Authorization")
if token == "" {
c.JSON(401, gin.H{"error": "Unauthorized"})
c.Abort()
return
}
c.Next()
}
}📅 学习进度
| Day | 主题 | 状态 |
|---|---|---|
| 01-17 | 基础/Gin | ✅ |
| 18 | 中间件 | ✅ |
| 19 | 数据库-GORM | ⬜ |
