【发布时间】:2012-02-28 09:06:52
【问题描述】:
我正在使用 ruby on rails 工作。导轨版本 3.1.1。我一直在使用Geocoder gem 根据街道地址对位置进行地理编码,它工作得很好。现在我一直在尝试使用访问者的 IP 地址来定位他们。
我试过了
result = request.location
和
ip = request.ip
result = Geocoder.search(ip)
第一个选项返回 nil,第二个选项给我一个正确的 IP 地址和一个空数组。
是否需要进行任何配置才能使其正常工作?
还有其他更流畅的选择吗?我正在考虑在浏览器中使用 HTML5 或一些 javascript,但这不是最佳选择,因为我想在服务器端使用该位置。
【问题讨论】:
-
您获取的 IP 地址似乎无法追踪到特定位置。如果你在这里输入 IP 会发生什么:whatismyipaddress.com/?gclid=CKWB55rJwK4CFQZ_hwodjDlvug
-
我在几个站点上尝试了相同的 IP,他们找到了我。 whatismyipaddress.com 也找到了我。
-
我好像也有同样的问题; IP 地理编码确实有效,但不再有效。
-
对我也不起作用。我什至尝试将服务从 FreeGeoIP 更改为 Nominatim/Google/Yandex。但没有结果
-
@AlbinSvensson 回复可能为时已晚,或者您找到了不同的解决方案,但这就是我所做的。在我的控制器中,我创建了一个变量,即
@client_ip = request.ip、@city = request.location.city等,然后能够在我的视图中使用这些变量` 等
标签: ruby-on-rails-3 geocoding rails-geocoder