package handler import ( "net/http" "github.com/gin-gonic/gin" "wx_service/internal/model" ) func AdminTokenMiddleware(adminToken string) gin.HandlerFunc { return func(c *gin.Context) { if adminToken == "" { c.AbortWithStatusJSON(http.StatusServiceUnavailable, model.Error(http.StatusServiceUnavailable, "未配置管理员口令")) return } token := c.GetHeader("X-Admin-Token") if token == "" || token != adminToken { c.AbortWithStatusJSON(http.StatusUnauthorized, model.Error(http.StatusUnauthorized, "无权限")) return } c.Next() } }