【发布时间】:2009-07-21 19:10:36
【问题描述】:
我想知道是否有一种简单的方法可以仅使用 IP 地址在 Rails 中查找用户的本地时区。我不希望用户必须自己输入他们的时区。我必须使用 JavaScript 还是有其他方法?
【问题讨论】:
标签: ruby-on-rails datetime ip-address
我想知道是否有一种简单的方法可以仅使用 IP 地址在 Rails 中查找用户的本地时区。我不希望用户必须自己输入他们的时区。我必须使用 JavaScript 还是有其他方法?
【问题讨论】:
标签: ruby-on-rails datetime ip-address
The maxmind GeoLite IP->city database 似乎支持时区,还有a FAQ on their site referring to this。您可以使用 Maxmind GeoLite City 数据库执行 IP->Location 和 Location->timezone 的两步过程,然后使用常见问题解答中提供的解决方案之一。
或者对于简单的 1 步 javascript,使用 getTimezoneOffset() 似乎是 the crux of the solution。
【讨论】:
似乎有几家供应商提供 API 和可调用服务以从 ip 地址到位置,很明显,一旦确定时区只是进一步查找。
您使用 javascript 询问浏览器“我在哪里,时区是什么”并将 Ajaxing 到您的服务器的替代方案听起来也很合理。
当然,一个足够坚定的用户可能会欺骗他们的方式,使他们看起来在不同的 IP 地址,但大概这对你来说并不重要......他们的选择。
【讨论】:
您可以使用 ip address-to-time API 通过 IP 地址查找时间。 更多详情请看这里http://worldtimeengine.com/。
丹
【讨论】: