Favicon
用于 Fiber 的 Favicon 中间件,忽略 favicon 请求,或者在内存中缓存提供的图标,以跳过磁盘访问来提升性能。用户代理频繁且不加区分地请求 favicon.ico,因此您可能希望在日志记录中间件之前使用此中间件将这些请求排除在日志之外。
注意
此中间件仅用于处理默认的隐式 favicon 请求,即 GET /favicon.ico 或 自定义 favicon URL。
签名
func New(config ...Config) fiber.Handler
示例
导入 Fiber Web 框架中的中间件包
import (
"github.com/gofiber/fiber/v2"
"github.com/gofiber/fiber/v2/middleware/favicon"
)
初始化 Fiber 应用后,您可以使用以下方式
// Initialize default config
app.Use(favicon.New())
// Or extend your config for customization
app.Use(favicon.New(favicon.Config{
File: "./favicon.ico",
URL: "/favicon.ico",
}))
配置
属性 | 类型 | 描述 | 默认值 |
---|---|---|---|
下一版本 | func(*fiber.Ctx) bool | Next 定义一个函数,当返回 true 时跳过此中间件。 | nil |
数据 | []byte | favicon 文件的原始数据。这可以用来代替 File 。 | nil |
文件 | string | File 存放实际 favicon 的路径,该文件将被缓存。 | "" |
URL | string | favicon 处理器的 URL。 | "/favicon.ico" |
文件系统 | http.FileSystem | FileSystem 是一个可选的备用文件系统,用于搜索 favicon。 | nil |
缓存控制 | string | CacheControl 定义响应中 Cache-Control 头的设置方式。 | "public, max-age=31536000" |
默认配置
var ConfigDefault = Config{
Next: nil,
File: "",
URL: fPath,
CacheControl: "public, max-age=31536000",
}