Recover 捕获错误
恢复
为 Fiber 提供的恢复中间件,可以从堆栈链的任何地方的恐慌中恢复,并将控制权处理到集中的 ErrorHandler。
目录
签名
func New(config ...Config) fiber.Handler
示例
导入作为 Fiber 网络框架一部分的中间件包
import (
"github.com/gofiber/fiber/v2"
"github.com/gofiber/fiber/v2/middleware/recover"
)
在你启动你的Fiber应用程序后,你可以使用以下可能性。
// 默认的中间件配置
app.Use(recover.New())
//这个恐慌将被中间件捕获
app.Get("/", func(c *fiber.Ctx) error {
panic("I'm an error")
})
配置
// Config定义了中间件的配置。
type Config struct {
// 下一步定义了一个函数,当返回真时跳过这个中间件。
//
// 可选。默认值:nil
Next func(c *fiber.Ctx) bool
// EnableStackTrace 启用处理堆栈跟踪。
//
// 可选。默认值:false
EnableStackTrace bool
// StackTraceHandler定义了一个处理堆栈跟踪的函数。
//
// 可选。默认值: defaultStackTraceHandler
StackTraceHandler func(c *fiber.Ctx, e interface{})
}
默认配置
var ConfigDefault = Config{
Next: nil,
EnableStackTrace: false,
StackTraceHandler: defaultStackTraceHandler,
}
本译文仅用于学习和交流目的,转载请务必注明文章译者、出处、和本文链接
我们的翻译工作遵照 CC 协议,如果我们的工作有侵犯到您的权益,请及时联系我们。