首页 > 解决方案 > 如何通过 Amazon API Gateway (JAVA) 检索用户的公共 IP 地址

问题描述

在 Cloudfront 的帮助下使用自定义策略创建签名 URL,并在策略中添加客户端 IP 和到期日期限制。为了测试我的代码,我在 java 代码中硬编码了我的公共 ipv4。我如何动态地做到这一点。我创建了一个程序

URL whatismyip = new URL("http://checkip.amazonaws.com"); BufferedReader in = new BufferedReader(new InputStreamReader(whatismyip.openStream()));

    String ip = in.readLine(); //you get the IP as a String
    return  ip+"/32";

在本地,它返回准确的输出,但是当我在我的开发层上运行它时,它返回的是集群的 IP,而不是用户的 IP。如何在我的集群上获取用户 IP。

标签: javaamazon-web-servicesapiaws-api-gatewayamazon-cloudfront

解决方案


X-Forwarded-ForCloudfront 文档中所述,您可以在标头中找到客户端的 IP 地址。

如何通过 CloudFront 获取请求的客户端 IP?.


推荐阅读