【问题标题】:Google Geocoder Returning null From Reverse Lookup谷歌地理编码器从反向查找返回 null
【发布时间】:2012-07-25 21:33:20
【问题描述】:

我正在尝试使用 Google 地理编码器进行反向地理编码器查找。我在 8 个值上运行完全相同的命令,但其中两个值只有一个错误,这让我感到困惑,因为其中一个失败的值与一个工作值相同。 ('working' 值并没有真正起作用——它们仍然从'formatted_address' 字段返回 undefined 值,但它们不会引发错误)。我正在运行的命令如下:

geocoder.geocode({latLng: new google.maps.LatLng(machineList[i].y, machineList[i].x)}, function(results, status) { address = results[0]; });

我收到来自 Javascript 的类型错误,声称结果为空。我不确定为什么会这样。有什么想法吗?

【问题讨论】:

  • 哪些具体值会导致返回 null?
  • 知道了——纬度/经度是 38.1471977000 -97.4348983000。错误现在来自使用值的行 - 'data += address.formatted_address'。不要问我为什么——我完全不知道。虽然现在我认为这是一个时间问题 - 如果我在实际使用地址值之前插入警报,则没有错误。

标签: geocoding reverse-geocoding google-geocoder


【解决方案1】:

好吧,事实证明这是一个时间问题。某些位置的 geocode() 命令完成时间比其他位置长,这导致该值显示为空。我最终通过将所有后续代码移到回调函数中来消除了这个问题(我之前没有这样做,因为整个事情都在一个循环中运行,而且我很难让它作为一个范围)。现在一切似乎都运行良好,并且位置显示正常。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-03-23
    • 2014-05-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多