package common import ( "net/http" "github.com/gogf/gf/v2/errors/gcode" "github.com/gogf/gf/v2/frame/g" "github.com/gogf/gf/v2/net/ghttp" ) // AdminAuth 管理端静态 token 鉴权中间件:请求头 X-Admin-Token 须与 config.yml // admin.token 一致;token 未配置(空)时管理接口全部拒绝。 func AdminAuth(r *ghttp.Request) { want := g.Cfg().MustGet(r.GetCtx(), "admin.token", "").String() if want == "" || r.Header.Get("X-Admin-Token") != want { r.Response.WriteStatusExit(http.StatusUnauthorized, g.Map{ "code": gcode.CodeNotAuthorized.Code(), "message": "管理端未授权", "data": nil, }) } r.Middleware.Next() }