Recover
用于 Fiber 的 Recover 中间件,可以从堆栈链中的任何地方的 panic 中恢复,并将控制权交给中心化的 ErrorHandler。
函数签名
func New(config ...Config) fiber.Handler
示例
导入属于 Fiber Web 框架的中间件包
import (
"github.com/gofiber/fiber/v2"
"github.com/gofiber/fiber/v2/middleware/recover"
)
初始化 Fiber 应用后,您可以使用以下方式
// Initialize default config
app.Use(recover.New())
// This panic will be caught by the middleware
app.Get("/", func(c *fiber.Ctx) error {
panic("I'm an error")
})
配置
属性 | 类型 | 描述 | 默认值 |
---|---|---|---|
下一个 | func(*fiber.Ctx) bool | Next 定义了一个函数,当返回 true 时跳过此中间件。 | nil |
EnableStackTrace | bool | EnableStackTrace 启用堆栈跟踪处理。 | false |
StackTraceHandler | func(*fiber.Ctx, interface{}) | StackTraceHandler 定义了一个用于处理堆栈跟踪的函数。 | defaultStackTraceHandler |
默认配置
var ConfigDefault = Config{
Next: nil,
EnableStackTrace: false,
StackTraceHandler: defaultStackTraceHandler,
}