API返回错误的LAT / LNG

时间:2016-04-07 14:18:13

标签: google-maps google-maps-api-3 maps coordinates

当我尝试根据地址获取lat / lng位置时,JSON返回给出错误的坐标。

API链接:http://maps.google.com/maps/api/geocode/json?address=Av.+Major+Williams,+1132+Boa+Vista+RR+Brazil&sensor=false

JSON:

{
   "results" : [
      {
         "address_components" : [
            {
               "long_name" : "Boa Vista",
               "short_name" : "Boa Vista",
               "types" : [ "locality", "political" ]
            },
            {
               "long_name" : "Boa Vista",
               "short_name" : "Boa Vista",
               "types" : [ "administrative_area_level_2", "political" ]
            },
            {
               "long_name" : "Roraima",
               "short_name" : "RR",
               "types" : [ "administrative_area_level_1", "political" ]
            },
            {
               "long_name" : "Brasil",
               "short_name" : "BR",
               "types" : [ "country", "political" ]
            }
         ],
         "formatted_address" : "Boa Vista, Boa Vista - RR, Brasil",
         "geometry" : {
            "bounds" : {
               "northeast" : {
                  "lat" : 2.8686558,
                  "lng" : -60.6236814
               },
               "southwest" : {
                  "lat" : 2.7457422,
                  "lng" : -60.7694416
               }
            },
            "location" : {
               "lat" : 2.8235098,
               "lng" : -60.6758331
            },
            "location_type" : "APPROXIMATE",
            "viewport" : {
               "northeast" : {
                  "lat" : 2.8686558,
                  "lng" : -60.6236814
               },
               "southwest" : {
                  "lat" : 2.7457422,
                  "lng" : -60.7694416
               }
            }
         },
         "partial_match" : true,
         "place_id" : "ChIJ26Sqy8oFk40RRV_XqcdlLrc",
         "types" : [ "locality", "political" ]
      }
   ],
   "status" : "OK"
}

如果我设置地址" Av。威廉姆斯少校,1132 Boa Vista RR Brasil"在Google地图上的位置是正确的:lat 2.8291068,lng -60.6711494

1 个答案:

答案 0 :(得分:0)

您的搜索未使用地理编码导致街道地址匹配。你的JSON表明它找到了最小的东西。

Google地图的搜索方式与地理编码不同。

https://developers.google.com/maps/documentation/geocoding/intro