Files
workspace/code/base-project/base-go-v2/internal/api/middleware/error.go
T
2025-11-01 17:29:25 +08:00

30 lines
600 B
Go

package middleware
import (
"base-go-v2/internal/logx"
"base-go-v2/internal/reponse"
"base-go-v2/internal/router"
"runtime/debug"
)
func ErrorMiddleware() router.HandlerFunc {
return func(c *router.Context) error {
err := c.Next()
if err != nil {
stack := string(debug.Stack())
logx.Logger.Error("请求错误",
logx.String("path", string(c.RequestCtx.Path())),
logx.String("method", string(c.RequestCtx.Method())),
logx.String("error", err.Error()),
logx.String("stack", stack),
)
return response.Error(c).Message(err.Error()).Send()
}
return nil
}
}