feat: move JsonApi handler、ErrorHandler、validator for param 2 pkg
continuous-integration/drone/push Build is passing

This commit is contained in:
2022-01-13 13:40:03 +08:00
parent d3b4e8f5e5
commit 80bd452cca
5 changed files with 149 additions and 43 deletions
+2 -1
View File
@@ -3,6 +3,7 @@ package user
import (
"git.icechen.cn/monorepo/backend/pkg/proto/zeus/lark"
"git.icechen.cn/monorepo/backend/pkg/rpc"
"git.icechen.cn/monorepo/backend/pkg/validator"
"github.com/gofiber/fiber/v2"
ctxLogger "github.com/luizsuper/ctxLoggers"
"go.uber.org/zap"
@@ -13,7 +14,7 @@ func LoginHandle(c *fiber.Ctx) error {
Code string `json:"code" validate:"required"`
Email string `json:"email" label:"邮箱" validate:"email"`
}{}
err := Bind(c, &p)
err := validator.Bind(c, &p)
if err != nil {
return err
}
+3 -42
View File
@@ -1,7 +1,7 @@
package main
import (
"encoding/json"
"git.icechen.cn/monorepo/backend/pkg/third_party"
"git.icechen.cn/monorepo/backend/app/zeus/api/lark/internal/user"
"github.com/gofiber/fiber/v2"
@@ -11,9 +11,9 @@ import (
func main() {
router := fiber.New(fiber.Config{
AppName: "api-lark",
ErrorHandler: middlewareError,
ErrorHandler: third_party.FiberErrHandler,
})
// router.Use(middlewareResp)
router.Use(third_party.FibberRespHandler)
userRouter := router.Group("/user")
userRouter.Post("/login", user.LoginHandle)
@@ -23,42 +23,3 @@ func main() {
ctxLogger.Error(nil, err.Error())
}
}
func middlewareResp(c *fiber.Ctx) error {
err := c.Next()
if err != nil {
return err
}
resp := Response{
Code: 0,
Message: "",
Data: c.Response().Body(),
}
return c.JSON(resp)
}
type Response struct {
Code int `json:"code"`
Message string `json:"message"`
Data json.RawMessage `json:"data,omitempty"`
}
func middlewareError(ctx *fiber.Ctx, err error) error {
code := fiber.StatusInternalServerError
msg := ""
if e, ok := err.(*fiber.Error); ok {
code = e.Code
msg = e.Message
}
if err != nil {
msg = err.Error()
}
return ctx.Status(code).JSON(Response{
Code: code,
Message: msg,
Data: nil,
})
}