跳过
跳过 Fiber 的中间件,如果谓词为真,则跳过包装的处理程序。
签名
func New(handler fiber.Handler, exclude func(c *fiber.Ctx) bool) fiber.Handler
示例
导入 Fiber Web 框架中包含的中间件包
import (
"github.com/gofiber/fiber/v2"
"github.com/gofiber/fiber/v2/middleware/skip"
)
在启动 Fiber 应用后,可以使用以下可能性
func main() {
app := fiber.New()
app.Use(skip.New(BasicHandler, func(ctx *fiber.Ctx) bool {
return ctx.Method() == fiber.MethodGet
}))
app.Get("/", func(ctx *fiber.Ctx) error {
return ctx.SendString("It was a GET request!")
})
log.Fatal(app.Listen(":3000"))
}
func BasicHandler(ctx *fiber.Ctx) error {
return ctx.SendString("It was not a GET request!")
}
提示
app.Use 将处理来自任何路由和任何方法的请求。在上面的示例中,它将仅在方法为 GET 时跳过。