- 移除日志初始化代码,改为使用 utils.InitLogger() - 删除用户模型定义,移至 models 包 - 抽离路由处理逻辑到 handlers 包 - 使用 middleware 包中的 AuthRequired 中间件 - 优化数据库连接和迁移逻辑 - 简化 main 函数,提高代码可读性和维护性
22 lines
344 B
Go
22 lines
344 B
Go
package middleware
|
|
|
|
import (
|
|
"net/http"
|
|
|
|
"github.com/gin-contrib/sessions"
|
|
"github.com/gin-gonic/gin"
|
|
)
|
|
|
|
func AuthRequired() gin.HandlerFunc {
|
|
return func(c *gin.Context) {
|
|
session := sessions.Default(c)
|
|
user := session.Get("user")
|
|
if user == nil {
|
|
c.Redirect(http.StatusFound, "/login")
|
|
c.Abort()
|
|
return
|
|
}
|
|
c.Next()
|
|
}
|
|
}
|