nil*_*lsf 4 python flask google-cloud-run
我有一个通过 Google Cloud Run 运行的 Flask 应用程序,我需要知道用户的 IP 地址。我正在使用 Gunicorn 作为我的服务器。我尝试过以下代码:
request.remote_addr
request.environ['REMOTE_ADDR']
request.environ.get('HTTP_X_REAL_IP', request.remote_addr)
Run Code Online (Sandbox Code Playgroud)
它返回这个 IP 地址:169.254.8.129这不是我的。这可能是应用程序和用户之间负载均衡器的 IP 吗?
有没有一种方法可以获得正确的 IP 地址而无需使用额外的服务?
您拥有 Google 提供的标头。在我的测试中我得到了这 2 个:
X-Forwarded-For: [MyPubliCIp, LoadBalancerIp,MyPubliCIp]
Forwarded: [for="MyPubliCIp";proto=http]
Run Code Online (Sandbox Code Playgroud)
根据需要使用它们。
| 归档时间: |
|
| 查看次数: |
2900 次 |
| 最近记录: |