package middleware import ( "gitee.ltd/lxh/wechat-robot/internal/config" "github.com/gofiber/fiber/v2" ) // IsAuthenticated 检查用户是否已登录 func IsAuthenticated(c *fiber.Ctx) bool { token := c.Cookies("auth_token") if token == "" { return false } // 加载配置 cfg, err := config.Load() if err != nil { return false } // 对比token (简单实现,实际应用可能需要更复杂的验证) return token == cfg.Auth.SecretKey } // Authenticate 创建身份验证中间件 func Authenticate() fiber.Handler { return func(c *fiber.Ctx) error { // 检查是否已登录 if !IsAuthenticated(c) { return c.Redirect("/login") } return c.Next() } }