如何从他的IP地址获取客户端时区偏移量

时间:2010-05-04 06:30:23

标签: c# asp.net timezone

我希望客户端的时区偏离我的网络应用的IP地址。我尝试过使用Javascripts getTimezone函数,但是,有些客户端的时区或时间设置不正确。我想得到偏移量并根据时区将一些信息反馈给客户。

感谢您花时间阅读问题。我也对其他方法持开放态度。

此致 Vamyip

2 个答案:

答案 0 :(得分:3)

如果您可以拨打网络服务,可以尝试使用ipinfodb.com。例如:

  

http://ipinfodb.com/ip_query.php?ip=69.59.196.211&timezone=true

返回:

<Response> <Ip>69.59.196.211</Ip> <Status>OK</Status> <CountryCode>US</CountryCode> <CountryName>United States</CountryName> <RegionCode>41</RegionCode> <RegionName>Oregon</RegionName> <City>Corvallis</City> <ZipPostalCode>97333</ZipPostalCode> <Latitude>44.4698</Latitude> <Longitude>-123.343</Longitude> <TimezoneName>America/Los_Angeles</TimezoneName> <Gmtoffset>-25200</Gmtoffset> <Isdst>1</Isdst> </Response>

更快的选择是使用免费的 MaxMind Geolite city 。如果不够好,您显然可以升级到更准确的付费版本。我不能说付费版本的质量,因为我从未使用它。您可以download the file binary blob version使用相同的数据库,然后使用the C# class进行查询。

答案 1 :(得分:-3)

google'geolocation ip'

您可以拨打公司提供的API。有些是免费的,有些则不是。