在项目开发中统一封装 Api 数据格式返回给前端这是最基本和常见的。这里以 Echo 框架为例
代码:
package utils
import (
"net/http"
"github.com/labstack/echo"
)
var Res *Result
// Result
type Result struct {
Success bool `json:"success"`
Code int `json:"code"`
Msg string `json:"msg"`
Data interface{} `json:"data"`}
// SuccessResponseJson
func (r *Result) SuccessResponseJson(msg string, code int, data ...interface{}) *Result {
return &Result{
Success: true,
Code: code,
Msg: msg,
Data: data[0],
}
}
// FailResponseJson
func (r *Result) FailResponseJson(msg string, code int, data ...interface{}) *Result {
return &Result{
Success: true,
Code: _const.Fail,
Msg: msg,
Data: data[0],
}
}
func ToJson(c echo.Context, res *Result) error {return c.JSON(http.StatusOK, res)
}
var ResP *Page
type Page struct {
Total int64 `json:"total"`
List interface{} `json:"list"`}
func (p *Page) ResponsePagination(count int64, list interface{}) *Page {
return &Page{
Total: count,
List: list,
}
}
正文完