Google maps api 3 Google Maps JS API Suggestion AutocompletionService并不总是返回相同的地址

Google maps api 3 Google Maps JS API Suggestion AutocompletionService并不总是返回相同的地址,google-maps-api-3,Google Maps Api 3,谷歌地图API建议并不总是返回相同的地址。我们有一个每10分钟运行一次的探测,每天大约运行8次PlaceService.GetPlaceDetails不会返回相同的地址 以下是HTTP调用: 大多数时候: GET https://maps.googleapis.com/maps/api/place/js/AutocompletionService.GetPredictions?1s169%20Avenue%20Boll%C3%A9e%2C%20Le%20Mans%2C%20France&

谷歌地图API建议并不总是返回相同的地址。我们有一个每10分钟运行一次的探测,每天大约运行8次PlaceService.GetPlaceDetails不会返回相同的地址

以下是HTTP调用:

大多数时候:

GET https://maps.googleapis.com/maps/api/place/js/AutocompletionService.GetPredictions?1s169%20Avenue%20Boll%C3%A9e%2C%20Le%20Mans%2C%20France&4sfr-FR&7scountry%3Afr&15e3&client=*******&callback=_xdc_._ca6qq&token=18520 HTTP/1.1
HTTP/1.1 200 OK ../.. ["169 Avenue Bollée, Le Mans, France", ../..
然后Google JS API调用:

GET https://maps.googleapis.com/maps/api/place/js/PlaceService.GetPlaceDetails
HTTP/1.1 200 OK
../..
     {
        "long_name" : "169",
        "short_name" : "169",
        "types" : [ "street_number" ]
     },
每天大约8次:

同样的要求

GET https://maps.googleapis.com/maps/api/place/js/AutocompletionService.GetPredictions?1s169%20Avenue%20Boll%C3%A9e%2C%20Le%20Mans%2C%20France&4sfr-FR&7scountry%3Afr&15e3&client=******&callback=_xdc_._ca6qq&token=123244 HTTP/1.1
HTTP/1.1 200 OK ../.. ["169 Avenue Bollée, Le Mans, France", ../..
但是GetPlaceDetails返回另一个街道号码(注意“181-167”而不是“169”)


有人知道怎么可能吗?我看不到这两者之间有任何其他HTTP调用。它导致我在探测过程中出错,因为它无法在181-167中找到地址的对应客户端。

来自Google Map Premium的答案(翻译自法语):

由于与Google服务的交互,Places数据库一直在更改,以便不断改进结果。在您的情况下,位置是相同的(相同的坐标),但绑定到此位置的地址略有不同。谷歌的搜索结果不会改变。你应该:

  • 更改代码以接受街道号码范围
  • 或者使用用户选择的地址
事实上,当结果从一个精确的地址切换到一个街道号码范围时,我认为这是由于@xomena所说的集群同步错误造成的

其次,我们注意到这个“随机”地址是一个建筑地址,从某种程度上说,谷歌说这个地址不可能总是准确的:


我们决定选择另一个测试地址,该地址的准确率较低。

可能您正在访问谷歌的不同数据中心,这些数据中心的同步性不太好。因此,要么谷歌可以更好地同步集群,要么我进行更稳健的探测(但更复杂),要么我模拟谷歌呼叫(但我的探测变得具体且不太现实)或者我接受探测“有时”会失败:
GET https://maps.googleapis.com/maps/api/place/js/PlaceService.GetPlaceDetails?2sfr-FR&8sEiMxNjkgQXZlbnVlIEJvbGzDqWUsIExlIE1hbnMsIEZyYW5jZQ&10e3&client=gme-giecovea1&callback=_xdc_._8rimfj&token=108576 HTTP/1.1
HTTP/1.1 200 OK
../..
         {
            "long_name" : "181-167",
            "short_name" : "181-167",
            "types" : [ "street_number" ]
         },