ETag
用于 Fiber 的 ETag 中间件,使缓存更高效并节省带宽,因为如果内容未更改,Web 服务器无需重新发送完整响应。
签名
func New(config ...Config) fiber.Handler
示例
导入 Fiber Web 框架中包含的中间件包
import (
"github.com/gofiber/fiber/v2"
"github.com/gofiber/fiber/v2/middleware/etag"
)
在启动 Fiber 应用程序后,可以使用以下可能性
// Initialize default config
app.Use(etag.New())
// Get / receives Etag: "13-1831710635" in response header
app.Get("/", func(c *fiber.Ctx) error {
return c.SendString("Hello, World!")
})
// Or extend your config for customization
app.Use(etag.New(etag.Config{
Weak: true,
}))
// Get / receives Etag: "W/"13-1831710635" in response header
app.Get("/", func(c *fiber.Ctx) error {
return c.SendString("Hello, World!")
})
配置
属性 | 类型 | 说明 | 默认 |
---|---|---|---|
Weak | 布尔值 | Weak 表示使用弱验证器。弱 etag 容易生成,但对于比较来说不太有用。 | false |
下一个 | func(*fiber.Ctx) bool | Next 定义了一个函数,当返回 true 时跳过此中间件。 | nil |
默认配置
var ConfigDefault = Config{
Next: nil,
Weak: false,
}