如何通过IP地址获取olson zoneinfo



有人知道如何通过客户端IP获取olson zoneinfo吗?我尝试了一些免费的IP服务,但他们返回的是"纽约"而不是"美国/纽约"。

您需要将其分为两个步骤。

有许多服务可以从纬度和经度坐标中获得IANA/Olson时区标识符。请参阅:如何使用经纬度坐标从一个位置获取时区?

要获得纬度和经度,您应该尽量不要依赖IP地理定位。许多网络浏览器都运行在可以报告其真实坐标的实际设备上,例如在手机上。如果必须的话,你可以回到IP地理位置,有很多服务试图做到这一点。

IP地理定位的问题是不能保证准确性。许多人通过代理服务器、VPN或其他机制访问互联网,在这些机制中,你查找的IP可能根本与他们的位置无关。

尝试geoap(http://www.maxmind.com/),它不是免费的,但运行良好,数据库经常更新。然后你可以从com.maxmind.geoip.timeZone获得时区信息,按国家和地区从客户端ip 获得时区信息

String timeZoneByCountryAndRegion(String country, String region)

相关内容

  • 没有找到相关文章

最新更新