google-maps-api-3 - Place Autocomplete Address Form 响应中缺少邮政编码

标签 google-maps-api-3

(请原谅,如果这是错误的 channel ,但官方谷歌页面指的是这个地方支持)

Place Autocomplete Address Form无法返回某些地址的邮政编码,例如:

4 Frederick Boulevard, Thorntonhall, Glasgow, G74 5DE, 英国

enter image description here

我确实在 Google map 上返回了一个邮政编码,但不是从 API 返回的。出了什么问题 - 是 API 中的数据不完整还是其他原因?

enter image description here

最佳答案

得到了 Google 的回复 - 他们的回答和回复时间(几个小时)的详细信息值得称赞:

TL;DR - 我们的系统无法将其识别为真实地址,因此它不会通过 Places API 返回邮政编码。

使用地理编码 API 搜索此地址会返回包含预期邮政编码“G74 5DE”的响应: https://maps.googleapis.com/maps/api/geocode/json?&address=4%20frederick%20boulevard%20thorntonhall%20glasgow%20uk&key=YOUR_KEY 但是,您会注意到“location_type”中的值是 RANGE INTERPOLATED。来自 https://developers.google.com/maps/documentation/geocoding/intro#Results : “RANGE_INTERPOLATED”仅返回反射(reflect)在两个精确点(例如十字路口)之间插值的近似值(通常在道路上)的地址。内插范围通常表示街道地址无法使用屋顶地理编码。

但是,当您使用 Places API 搜索此位置时,使用的逻辑略有不同。使用该页面上的自动完成表单,您可以在浏览器的“网络”选项卡中看到,当您选择第一个预测时,会向我们的服务器发出以下请求: https://maps.googleapis.com/maps/api/place/js/PlaceService.GetPlaceDetails?2sen-US&10e3&14m1&1sEis0IEZyZWRlcmljayBCbHZkLCBUaG9ybnRvbmhhbGwsIEdsYXNnb3csIFVLIi4qLAoUChIJDXE3ZJ04iEgRKVCvpA6Zu00SFAoSCcUTLHCPOIhIES5R4rnn2wuV&15s176F4C4D-3F76-45B3-9F55-22F8D9BF3C4Btzvil5tvr27c&16m1&1saddress_component&17m1&2e1&callback=_xdc_._9fzwpx&key=KEY&token=TOKEN 这是对地点 ID 的地点详细信息的请求 请注意,通常地点 ID 以“C”开头,并且比这短得多。较长的地点 ID 几乎总是表明它是人为的。

如果您查看针对该地点 ID 的地点详情请求: https://maps.googleapis.com/maps/api/place/details/json?place_id=Eis0IEZyZWRlcmljayBCbHZkLCBUaG9ybnRvbmhhbGwsIEdsYXNnb3csIFVLIi4qLAoUChIJDXE3ZJ04iEgRKVCvpA6Zu00SFAoSCcUTLHCPOIhIES5R4rnn2wuV&key=YOUR_KEY 您可以看到这是“类型:[路线]”(https://developers.google.com/maps/documentation/geocoding/intro#Types),表明它不是街道地址。这就是为什么这个结果没有街道号码或邮政编码,所以当您在您提到的 URL 上使用自动完成时,您看不到这些东西。另一件事,如果你绘制纬度,你从细节响应中得到的长度会让你正好位于 William Grange 的 Frederick Blvd 街道的中心。

所以从这封电子邮件的顶部重申,您的结果是预期的,因为那不是我们数据库中的有效街道地址。 Place API 请求不会为您提供街道号码和邮政编码,但地理编码请求(或通过 maps.google.com 的请求)会提供,即使该地点不存在。如果您知道这是一个有效地址,您可以使用 Google map 上的“发送反馈”功能自行报告,以便我们更新我们的记录。在 Google map 中,您可以报告以下问题:

  • 道路名称不正确,
  • 关于单向和双向道路的错误信息,
  • 错误绘制的道路,
  • 封闭道路,
  • 不存在的道路,
  • 错误的地址或标记位置, 但是,仍需要向我们的支持团队报告邮政编码缺失或不正确等问题,以进行进一步调查。

请参阅下面有关更正数据问题的文章: https://support.google.com/maps/answer/3094045

通过自助 channel 提交更正后,版主将对其进行审核,然后再批准并流入我们的数据中。请理解,审核您的修改可能需要几周时间。我们建议注册我们的本地向导计划 (https://maps.google.com/localguides/home) 以跟踪您提交的编辑。如果您还有其他问题,请随时与我们联系。

关于google-maps-api-3 - Place Autocomplete Address Form 响应中缺少邮政编码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62576441/

相关文章:

javascript - 无法使用 Google Maps API V3 删除 MVCArray/Polylines

javascript - 谷歌地图中地面覆盖上的鼠标事件?

javascript - map API v3 - Chrome 和 Opera 不显示标记

javascript - 点击 map 时未捕获的 TypeError : $scope. map.control.getGMap 不是一个函数

javascript - 当它被覆盖时,如何检测哪个图形(圆形,多边形)发生一些事件?谷歌地图 API JavaScript

javascript - 从 Google Places Library 获取准确结果

javascript - Google map - 隐藏目的地标记

javascript - Google map API 与库

javascript - JQuery 和 Google map API 问题

javascript - Google Elevation 调用适用于浏览器,但不适用于 node.js