feat: add middlewares
This commit is contained in:
9
templates/project/app/middlewares/mid_debug.go.tpl
Normal file
9
templates/project/app/middlewares/mid_debug.go.tpl
Normal file
@@ -0,0 +1,9 @@
|
||||
package middlewares
|
||||
|
||||
import (
|
||||
"github.com/gofiber/fiber/v3"
|
||||
)
|
||||
|
||||
func (f *Middlewares) DebugMode(c fiber.Ctx) error {
|
||||
return c.Next()
|
||||
}
|
||||
31
templates/project/app/middlewares/mid_response.go.tpl
Normal file
31
templates/project/app/middlewares/mid_response.go.tpl
Normal file
@@ -0,0 +1,31 @@
|
||||
package middlewares
|
||||
|
||||
import (
|
||||
"{{.ModuleName}}/app/errorx"
|
||||
|
||||
"github.com/gofiber/fiber/v3"
|
||||
log "github.com/sirupsen/logrus"
|
||||
)
|
||||
|
||||
func (f *Middlewares) ProcessResponse(c fiber.Ctx) error {
|
||||
err := c.Next()
|
||||
if err != nil {
|
||||
log.WithError(err).Error("process response error")
|
||||
|
||||
if e, ok := err.(errorx.Response); ok {
|
||||
return e.Response(c)
|
||||
}
|
||||
|
||||
if e, ok := err.(*fiber.Error); ok {
|
||||
return errorx.Response{
|
||||
StatusCode: e.Code,
|
||||
Code: e.Code,
|
||||
Message: e.Message,
|
||||
}.Response(c)
|
||||
}
|
||||
|
||||
return errorx.Wrap(err).Response(c)
|
||||
|
||||
}
|
||||
return err
|
||||
}
|
||||
15
templates/project/app/middlewares/middlewares.go.tpl
Normal file
15
templates/project/app/middlewares/middlewares.go.tpl
Normal file
@@ -0,0 +1,15 @@
|
||||
package middlewares
|
||||
|
||||
import (
|
||||
log "github.com/sirupsen/logrus"
|
||||
)
|
||||
|
||||
// @provider
|
||||
type Middlewares struct {
|
||||
log *log.Entry `inject:"false"`
|
||||
}
|
||||
|
||||
func (f *Middlewares) Prepare() error {
|
||||
f.log = log.WithField("module", "middleware")
|
||||
return nil
|
||||
}
|
||||
Reference in New Issue
Block a user