RequestID
适用于 Fiber 的 RequestID 中间件,它向响应添加一个标识符。
签名
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) bool | 当返回 true 时,Next 定义一个函数来跳过此中间件。 | nil |
标头 | 字符串 | Header 是获取/设置唯一请求 ID 的标头键。 | "X-Request-ID" |
生成器 | func() string | Generator 定义一个函数来生成唯一标识符。 | utils.UUID |
上下文键 | interface{} | ContextKey 定义在特定请求的本地存储请求 ID 时使用的键。 | "requestid" |
默认配置
默认配置使用快速 UUID 生成器,该生成器将公开发送到服务器的请求数。若要出于更好的隐私性隐藏此值,请使用 utils.UUIDv4
生成器。
var ConfigDefault = Config{
Next: nil,
Header: fiber.HeaderXRequestID,
Generator: utils.UUID,
ContextKey: "requestid",
}