google-maps - 使用 Google Maps API 找不到位置

标签 google-maps geocoding

我有一个有效地址 according to the USPS ...

1606 ULSTER AVE, LAKE KATRINE, NY 12449

Searching Google Maps对于这个地址,我的浏览器会产生正确的结果。然而,Google Maps API yields ZERO_RESULTS:

{
   "results" : [],
   "status" : "ZERO_RESULTS"
}

我的位置中约有 1% 发生了这种情况。为什么 API 返回单独的结果?如何让它产生与浏览器 UI 相同的结果?

最佳答案

如果您在提交地址进行 Google 地理编码之前验证/标准化该地址,也许会得到更好的结果。在 Google 上快速搜索“地址验证”将为您提供许多不错的工具来实现此目的。

@geocodezip 是对的,当您删除邮政编码时,您会得到更可预测的响应。这可能是因为邮政编码是城市/州组合的数字表示,并且通常在许多表中被视为肯定标识符。但是,由于美国邮政服务可以随时更改邮政编码,因此通过始终删除邮政编码可能会获得更一致的响应(如果遇到问题)。始终删除邮政编码的问题在于,您现在已经删除了 20% 的地址信息,而且很多时候邮政编码可以胜过糟糕的城市/州组合,并且仍然为您提供有效的结果。

考虑以下有些无效的地址:这失败了:

275 north main Hollywsdfsdfsdfsdfood CA 84627

如果您放弃邮政编码,您将一无所获,因为 275 North main 不是“Hollywsdfsdfsdfsdfood CA”中的有效地址

但是,如果您保留邮政编码并使用它而不是不太可能的“Hollywsdfsdfsdfsdfood CA”作为城市/州指示符,您最终会得到一个位于 Ephraim, Utah 84627 的完全有效的地址。

这是 SmartyStreets 上的示例,因为 Google map 无法使用伪造的城市名称来处理它。经过验证的地址是:

275 N Main St Ephraim UT 84627-1107

因此,回到地理编码之前地址验证的想法,您可以将该地址放入 Google Maps 中并轻松获取地理编码。甚至可以保留当前的流程,然后为失败的 1% 添加一个单独的例程。

[我每天都会处理这种事情,我在SmartyStreets工作]

关于google-maps - 使用 Google Maps API 找不到位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17047857/

相关文章:

javascript - ng-click 错误 : [$parse:syntax] Syntax Error: Token 'Object' is unexpected, 期待 []]

ajax - 除 Google 之外,您还使用哪些 Maps API 与 GWT?

google-maps - 在 Google Maps API v3 中为 DirectionsService 设置语言

javascript - Obj 构造函数中的 AJAX 回调

api - 澳大利亚郊区的谷歌地图阴影

google-maps - Jersey /根西岛的谷歌地图 API?

java - Android 谷歌地图 v2 : resize polygon

javascript - 如何在 Google map 中添加缩放控件

ios - Google Map SDK 可以跟踪某人的位置 iOS

java - 如何在java中使用谷歌地理编码?