【发布时间】:2012-09-05 09:41:22
【问题描述】:
我在 google appengine (GAE) 上托管了我的网络应用程序。 GAE sdk 是否提供任何方法来查找 IP 的地理位置?如果是,请建议我该怎么做。
【问题讨论】:
标签: java google-app-engine ip-geolocation
我在 google appengine (GAE) 上托管了我的网络应用程序。 GAE sdk 是否提供任何方法来查找 IP 的地理位置?如果是,请建议我该怎么做。
【问题讨论】:
标签: java google-app-engine ip-geolocation
是的,您可以使用请求标头来获取 IP 的地理位置。
X-AppEngine-Country 请求来自的国家,作为 ISO 3166-1 alpha-2 国家代码。 App Engine 从 客户端的 IP 地址。
其他对位置有用的标题是 X-AppEngine-Region、X-AppEngine-City 和 X-AppEngine-CityLatLong
我认为这在本地 sdk 上运行时不会返回有效值。
【讨论】:
您的问题并不清楚您是想确定向您的 GAE 应用程序发出的 http 请求的位置,还是希望 GAE 上的服务能够为您提供任何 IP 地址的地理位置。
GAE 支持某些包含地理位置信息的 HTTP 标头,例如国家、城市、地区和 IP 地址。更多详情请参考这里的两篇文章:
上面的文章讨论了像
这样的标题如果您只是在寻找一种服务来提供基于 IP 的地理位置详细信息,那么 GAE 不提供该服务。有各种可用的外部 Web 服务,例如上述答案之一。
【讨论】: