地理编码api对IP地址的响应速度不够快

时间:2014-09-29 06:01:37

标签: ruby-on-rails rails-geocoder

在我的生产服务器中,我使用过Geocoder gem。但是,以下代码无法在服务器控制台中运行。

Geocoder.search("192.168.1.4")

我已将我的geocoder.rb文件配置为超时30秒。但它仍然给错误地理编码api响应不够快

令人惊讶的是,每当我运行Geocoder.search("San Francisco, CA")时,它都会在几秒钟内得出结果。

我该怎么办?

3 个答案:

答案 0 :(得分:1)

我认为这是freegeoip的一个问题,请尝试以下方法:

在rails控制台中输入:

Geocoder.configure(:ip_lookup =>:telize)

现在尝试在您的控制台中搜索。

如果有效,你可以拥有你的文件(config / initializers / geocoder.rb)

Geocoder.configure(

  :timeout=>20,

  :lookup=>:yandex,

  :ip_lookup=>:telize,

  :language=>:en,

  :http_headers=>{},

  :use_https=>false,

  :http_proxy=>nil,

  :https_proxy=>nil,

  :api_key=>nil,

  :cache=>nil,

  :cache_prefix=>"geocoder:",

  :units=>:km,

  :distances=>:linear

)

我希望这对你有所帮助。

答案 1 :(得分:0)

您是否尝试使用面向公众的IP而不是您正在使用的内部IP?

IP地址地理编码通常会返回拥有IP地址块而非实际计算机IP地址的组织的结果。这是因为IP地址地理编码不考虑专用IP,VPN或内部网络块。

答案 2 :(得分:0)

当我没有连接到互联网时,我收到此错误..请确认您有一个活跃的互联网或您绕过代理。