跳至主要内容
版本:v2.x

跳过

跳过 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 时跳过。