📄️ Adaptor
将 net/http 处理程序转换为 Fiber 请求处理程序或从 Fiber 请求处理程序转换,特别感谢 @arsmn!
📄️ BasicAuth
Fiber 的基本身份验证中间件,提供 HTTP 基本身份验证。它为有效凭据调用下一个处理程序,并为缺失或无效凭据提供 401 未授权或自定义响应。
📄️ 缓存
为 Fiber 设计的缓存中间件,用于拦截响应并对其进行缓存。此中间件将使用 c.Path() 作为唯一标识符来缓存正文、内容类型和状态代码。特别感谢 @codemicro 为 Fiber 核心创建此中间件!
📄️ 压缩
Fiber 的压缩中间件,它将根据 Accept-Encoding 标头使用 gzip、deflate 和 brotli 压缩来压缩响应。
📄️ CORS
CORS(跨域资源共享)是 Fiber 的中间件,允许服务器指定谁可以访问其资源以及如何访问。它不是安全功能,而是一种为跨域请求放松 Web 浏览器安全模型的方法。您可以在 Mozilla Developer Network 上了解有关 CORS 的更多信息。
📄️ CSRF
Fiber 的 CSRF 中间件提供针对跨站请求伪造 (CSRF) 攻击的保护。使用 RFC9110#section-9.2.1(GET、HEAD、OPTIONS 和 TRACE)定义为“安全”以外的方法发出的请求将使用令牌进行验证。如果检测到潜在攻击,中间件将返回默认的 403 禁止错误。
📄️ EarlyData
Fiber 的 Early Data 中间件增加了对 TLS 1.3 早期数据(“0-RTT”)功能的支持。
📄️ 加密 Cookie
加密 Cookie 是 Fiber 的中间件,它通过加密保护您的 Cookie 值。
📄️ EnvVar
Fiber 的 EnvVar 中间件,可用于公开具有各种选项的环境变量。
📄️ ETag
Fiber 的 ETag 中间件让缓存更有效并节省带宽,因为如果内容未更改,Web 服务器无需重新发送完整响应。
📄️ ExpVar
Fiber 的 Expvar 中间件通过其 HTTP 服务器运行时以 JSON 格式提供公开的变量。该软件包通常仅导入以注册其 HTTP 处理程序的副作用。处理的路径是 /debug/vars。
📄️ Favicon
Fiber 的 Favicon 中间件,它忽略 favicon 请求或将提供的图标缓存到内存中,以通过跳过磁盘访问来提高性能。用户代理经常无差别地请求 favicon.ico,因此您可能希望通过在日志记录中间件之前使用此中间件将这些请求从日志中排除。
📄️ FileSystem
Fiber 的文件系统中间件,它使您能够从目录中提供文件。
📄️ 健康检查
Fiber 的活动性和就绪性探测中间件,它为检查 HTTP 应用程序的活动性和就绪性状态提供了两个端点。
📄️ Helmet
Helmet 中间件通过设置各种 HTTP 头部来帮助保护你的应用程序。
📄️ 幂等性
Fiber 的幂等性中间件允许容错 API,其中重复请求(例如由于客户端网络问题)不会错误地导致在服务器端多次执行相同操作。
📄️ Keyauth
Key auth 中间件提供基于密钥的身份验证。
📄️ Limiter
Fiber 的 Limiter 中间件用于限制对公共 API 和/或端点的重复请求,例如密码重置。它还适用于需要限制速率的 API 客户端、网络爬取或其他任务。
📄️ Logger
Fiber 的 Logger 中间件用于记录 HTTP 请求/响应详细信息。
📄️ Monitor
Fiber 的 Monitor 中间件用于报告服务器指标,灵感来自 express-status-monitor
📄️ Pprof
Fiber 的 Pprof 中间件通过其 HTTP 服务器运行时数据提供 pprof 可视化工具期望的格式。该包通常仅导入以产生注册其 HTTP 处理程序的副作用。处理的路径都以 /debug/pprof/ 开头。
📄️ Proxy
Fiber 的 Proxy 中间件允许你将请求代理到多个服务器。
📄️ Recover
Fiber 的 Recover 中间件从堆栈链中的任何位置恢复 panic,并将控制权交给集中的 ErrorHandler。
📄️ Redirect
Fiber 的重定向中间件。
📄️ RequestID
Fiber 的 RequestID 中间件向响应添加一个标识符。
📄️ Rewrite
Rewrite 中间件根据提供的规则重写 URL 路径。它有助于向后兼容或仅仅创建更简洁、更具描述性的链接。
📄️ Session
Fiber 的 Session 中间件。
📄️ Skip
Fiber 的 Skip 中间件在谓词为真时跳过包装的处理程序。
📄️ Timeout
Fiber 存在两种不同的超时中间件实现。