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

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

Geocoder.search("192.168.1.4") 

我已经配置了geocoder.rb文件超时30秒。 但它仍然给出了错误地理编码api没有足够快的响应

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

我该怎么办?

我认为这是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 ) 

我希望这对你有帮助。

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

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

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