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

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) boolNext 定义了一个函数,当返回 true 时跳过此中间件。nil
Data[]bytefavicon 文件的原始数据。这可用于代替 Filenil
FilestringFile 保存指向实际 favicon 的路径,该 favicon 将被缓存。""
URLstringfavicon 处理程序的 URL。"/favicon.ico"
FileSystemhttp.FileSystemFileSystem 是一个可选的备用文件系统,用于在其中搜索 favicon。nil
CacheControlstringCacheControl 定义响应中的 Cache-Control 标头应如何设置。"public, max-age=31536000"

默认配置

var ConfigDefault = Config{
Next: nil,
File: "",
URL: fPath,
CacheControl: "public, max-age=31536000",
}