package httpx import "github.com/gin-gonic/gin" // Handle 泛型 handler 收口: Parse 取参 → 调 logic → 统一出参。 // 试点新约定: 替代旧模板逐 handler 复制 Parse/OkJson/ErrorJson 的样板。 func Handle[TReq any, TResp any](c *gin.Context, fn func(req *TReq) (*TResp, error)) { var req TReq if err := Parse(c, &req); err != nil { ErrorJson(c, err) return } resp, err := fn(&req) if err != nil { ErrorJson(c, err) return } OkJson(c, resp) } // HandleResult 统一收口:err 非 nil 走 ErrorJson,否则 OkJson(data)。 func HandleResult(c *gin.Context, data any, err error) { if err != nil { ErrorJson(c, err) return } OkJson(c, data) }