【问题标题】:geocoding api not responding fast enough for IP address地理编码 API 对 IP 地址的响应速度不够快
【发布时间】:2014-09-29 06:01:36
【问题描述】:

在我的生产服务器中,我使用了 Geocoder gem。但是,以下代码在服务器控制台中不起作用。

Geocoder.search("192.168.1.4")

我已将我的 geocoder.rb 文件配置为超时 30 秒。但它仍然给出了错误geocoding api notresponsive enough

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

我该怎么办?

【问题讨论】:

    标签: ruby-on-rails rails-geocoder


    【解决方案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
    
    )
    

    希望对你有所帮助。

    【讨论】:

      【解决方案2】:

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

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

      【讨论】:

      • 我用过google的IP:173.194.120.99。但仍然是同样的错误。
      【解决方案3】:

      当我没有连接到互联网时,我收到此错误。请验证您是否有活动的互联网或您正在绕过代理。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-08-11
        • 1970-01-01
        • 1970-01-01
        • 2011-03-15
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多