2017-02-14 52 views
0

从node.js中的ip获取时区的最简单和最好的方法是什么?理想情况下不需要调用web服务(任何免费的web服务解决方案也是受欢迎的)。从节点js中的IP地址获取时区

Uptil现在我已成功地找到2个字母ISO-3166-1国家代码经/纬度ISO-3166-2 subcountry代码FIPS 10-4 subcountry代码城市名称从npm模块geoip-lite

我该如何将这些数据转换为时区或utc偏移量?或者更简单的方法是直接将IP映射到时区。

+0

参见http://stackoverflow.com/questions/16086962/how-to-get-a-time-zone-from-a-location-using-latitude - 和经度坐标 –

回答

1

satelize可以做到这一点。

var satelize = require('satelize'); 
satelize.satelize({ip:'46.19.37.108'}, function(err, payload) { 
}); 

输出信息包括时区

{ 
    "ip": "46.19.37.108", 
    "continent_code": "EU", 
    "continent": { 
     "de": "Europa", 
     "en": "Europe" 
    }, 
    "country_code": "NL", 
    "country": { 
     "de": "Niederlande", 
     "en": "Netherlands" 
    }, 
    "latitude": 52.5, 
    "longitude": 5.75, 
    "timezone":"Europe/Amsterdam" 
}