npm 包 cloudflare-middleware 使用教程

阅读时长 3 分钟读完

介绍

cloudflare-middleware 是一个 Node.js 中间件,可以轻松地从 Cloudflare 获取真实 IP 地址。当使用 Cloudflare 时,请求将通过 CDN,这也意味着您的服务器将看到一个 Cloudflare 的 IP 地址而不是客户端的真实 IP 地址。而使用 cloudflare-middleware 中间件,您可以轻松地获取客户端真实的 IP 地址。

安装

使用 npm 包管理器安装:

使用

在您的 Node.js 应用程序中引入 cloudflare-middleware:

在您的应用程序中使用中间件:

完成以上配置后,您的应用程序将自动包含客户端真实 IP 地址。您可以通过访问 req.realIp 属性来获取 IP 地址:

配置

我们可以通过给 cloudflareMiddleware() 方法传递一个对象来配置中间件:

配置中可选的属性如下:

trustAzureHeader

当启用此选项后,中间件将接受来自 Azure(Azure Web Apps)的 IP 包头信息并使用其返回。

trustedProxyRanges

设置您的代理服务器 IP 地址段。例如,如果您有一堆负载均衡器,那么您可以在此处添加所有负载均衡器的 IP 地址段,以便中间件可以真正识别请求的 IP。默认情况下,中间件信任以下 IP 地址段:

  • '127.0.0.1"
  • '::1'
  • '10.0.0.0/8'
  • '172.16.0.0/12'
  • '192.168.0.0/16'

trust_X_Forwarded_For

当启用此选项时,中间件将尝试在从 Cloudflare 接收到的 X-Forwarded-For 首部中查找 IP 地址。

完整示例

以下是一个完整的示例,展示了如何使用 cloudflare-middleware:

-- -------------------- ---- -------
----- ------- - -------------------
----- -------------------- - ---------------------------------

----- --- - ----------

--------------------------------

------------ ------------- -----
  ------------------------- ------------
---

---------------- ---------- -
  ------------------- ------- -- ---- -------
---

结论

在使用 Cloudflare 时,获取真实的客户端 IP 地址是一个有用的操作。使用 npm 包 cloudflare-middleware,您可以轻松地获取客户端真实的 IP 地址。这对于那些使用 Cloudflare CDN 的网站和应用程序来说,是一个十分有实际意义的工具。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/600562f681e8991b448e0b94

纠错
反馈