DOT*_*eam 5 api google-maps google-maps-api-3 google-geocoder google-geocoding-api
我正在使用 google Geocode API 来获取特定地址的经纬度。
当我在谷歌搜索或谷歌地图中搜索“364 S Side Square, Carlinville, IL 62626, USA”时,它会在谷歌搜索结果或地图结果中提供准确的定位。
但同时,当我使用以下请求调用使用地理编码 API 搜索相同的地址时,它给出了“partial_match”:true
任何人都知道为什么它给出 "partial_match" : true 作为回应?
我必须在 API 请求中进行哪些更改才能获得“partial_match”?
要了解“364 S Side Square, Carlinville, IL 62626, USA”的部分匹配标志的性质,让我们在地理编码器工具中查看此地址:
事实上,在结果中搜索字符串和格式的地址是完全一样的,但是,我们必须要注意像其他值location_type
和place_id
如您所见,位置类型为 RANGE_INTERPOLATED 并且地点 ID 具有长值Ei0zNjQgUyBTaWRlIFNxdWFyZSwgQ2FybGludmlsbGUsIElMIDYyNjI2LCBVU0E
。这意味着谷歌在他们的数据库中没有准确的地址功能,并试图插入这个地址可能位于的位置。如果 Google 数据库中存在地址,您将看到位置类型 ROOFTOP 和较短的地点 ID(类似于 ChIJrTLr-GyuEmsRBfy61i59si0)。
恢复上述内容,您示例中的部分匹配标志表明 Google 数据库中不存在确切的街道地址功能。
这也可以通过文档中的以下句子来确认:
部分匹配最常发生在您在请求中传递的地区内不存在的街道地址。
https://developers.google.com/maps/documentation/geocoding/intro#GeocodingResponses
您还可以选择通过帮助中心向 Google 报告缺失的地址:
https://support.google.com/maps/answer/6320846
希望我的回答能解决你的疑惑!
小智 1
partial_match 表示地理编码器没有返回原始请求的精确匹配,尽管它能够匹配部分请求的地址。您可能希望检查原始请求是否有拼写错误和/或地址不完整。
部分匹配最常发生在您在请求中传递的区域内不存在的街道地址上。当请求与同一地点的两个或多个位置匹配时,也可能返回部分匹配。例如,“21 Henr St, Bristol, UK”将返回 Henry Street 和 Henrietta Street 的部分匹配项。请注意,如果请求包含拼写错误的地址部分,地理编码服务可能会建议替代地址。以这种方式触发的建议也将被标记为部分匹配。
尝试place_id这是唯一标识符
归档时间: |
|
查看次数: |
3647 次 |
最近记录: |