package api import ( "encoding/json" "fmt" "gadmin/config" "gadmin/utility/serializer" "github.com/gin-gonic/gin" "gopkg.in/go-playground/validator.v8" ) func Ping(c *gin.Context) { c.JSON(200, serializer.Response{ Code: 0, Msg: "Pong", }) } func ErrorResponse(err error) serializer.Response { if ve, ok := err.(validator.ValidationErrors); ok { for _, e := range ve { field := config.T(fmt.Sprintf("Field.%s", e.Field)) tag := config.T(fmt.Sprintf("Tag.Valid.%s", e.Tag)) return serializer.ParamErr( fmt.Sprintf("%s%s", field, tag), err, ) } } if _, ok := err.(*json.UnmarshalTypeError); ok { return serializer.ParamErr("JSON类型不匹配", err) } return serializer.ParamErr("参数错误", err) }