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

RequestID

RequestID 是 Fiber 的一个中间件,用于向响应添加一个标识符。

签名

func New(config ...Config) fiber.Handler

示例

导入作为 Fiber Web 框架一部分的中间件包

import (
"github.com/gofiber/fiber/v2"
"github.com/gofiber/fiber/v2/middleware/requestid"
)

初始化 Fiber 应用后,可以使用以下配置项

// Initialize default config
app.Use(requestid.New())

// Or extend your config for customization
app.Use(requestid.New(requestid.Config{
Header: "X-Custom-Header",
Generator: func() string {
return "static-id"
},
}))

配置

属性类型描述默认值
下一个func(*fiber.Ctx) boolNext 定义一个函数,当返回 true 时跳过此中间件。nil
HeaderstringHeader 是用于获取/设置唯一请求 ID 的标头键。"X-Request-ID"
生成器func() stringGenerator 定义一个函数,用于生成唯一标识符。utils.UUID
上下文键interface{}ContextKey 定义了在本地存储特定请求的请求 ID 时使用的键。"requestid"

默认配置

默认配置使用一个快速 UUID 生成器,它会暴露服务器处理的请求数量。为了更好的隐私性,可以使用 utils.UUIDv4 生成器来隐藏此值。

var ConfigDefault = Config{
Next: nil,
Header: fiber.HeaderXRequestID,
Generator: utils.UUID,
ContextKey: "requestid",
}