17

我正在向 Google Maps Distance Matrix API 执行请求,以计算从一个点到另一个点的距离。这两点都在俄罗斯。问题在于,在某些情况下,API 返回错误的目的地。

例如,我选择俄罗斯黑海沿岸的这个点

对 API 的请求是
https://maps.googleapis.com/maps/api/distancematrix/json?origins=58.3941198,33.223535&destinations=44.58019749055891,38.0705451965332&mode=driving&language=ru-RU&key=

它返回

"destination_addresses" : [
  "1 Chome-11 Kamifukubara, Yonago-shi, Tottori-ken 683-0004, Japan"
],...

所以,谷歌地图知道是俄罗斯,但距离矩阵认为是日本。为什么?

海岸附近的地方是否存在已知的错误?

更新

此错误已在问题跟踪器https://issuetracker.google.com/issues/35828610中处理。它于 2016 年 7 月 19 日被标记为已修复。

4

2 回答 2

15

好消息和坏消息:)

坏消息是日本地址将出现在许多远程位置,因为这是地理编码 API 中的一个持续问题。这已在 Google Maps API 问题跟踪器中报告: https ://code.google.com/p/gmaps-api-issues/issues/detail?id=9683

查看问题跟踪器上的此评论,了解有关如何解决此问题的详细信息。

好消息是您仍然可以从 Distance Matrix API 和 Directions API 获得正确的距离和路线。

于 2016-05-04T13:48:21.590 回答
11

这个日本位置的问题在于它的界限,它说它遍布世界各地:

"formatted_address" : "1 Chome-11 Kamifukubara, Yonago-shi, Tottori-ken 683-0004, Japan",
     "geometry" : {
        "bounds" : {
           "northeast" : {
              "lat" : 90,
              "lng" : 180
           },
           "southwest" : {
              "lat" : -90,
              "lng" : -180
           }
        },
        "location" : {
           "lat" : 35.4426127,
           "lng" : 133.3638089
        },
        "location_type" : "APPROXIMATE",
        "viewport" : {
           "northeast" : {
              "lat" : 90,
              "lng" : 180
           },
           "southwest" : {
              "lat" : -90,
              "lng" : -180
           }
        }
     },
     "place_id" : "ChIJlwBC99P3VjUReuUmCg7qU_E",
     "types" : [ "sublocality_level_3", "sublocality", "political" ]
于 2016-05-04T14:58:35.150 回答