某些地方缺少第2级行政区域的结果

时间:2018-10-11 07:27:17

标签: google-maps google-geocoding-api google-geolocation

在某些地方,我没有到达县('administrative_area_level_2'),其中一个是:

formatted_address:“澳大利亚新南威尔士州Barangaroo 2000” place_id:“ ChIJ1ZL9NkGuEmsRUEkzFmh9AQU”

谁能帮忙,如何获得郡县?

谢谢

1 个答案:

答案 0 :(得分:1)

Geocoding API和Places API Web服务在响应中仅返回与给定要素的地址格式相关的地址组件。在您的示例中,场所ID ChIJ1ZL9NkGuEmsRUEkzFmh9AQU不需要管理区域2来创建格式化的地址Barangaroo NSW 2000, Australia,因此响应中缺少此地址部分。

解决方法如下。使用Barangaroo NSW 2000, Australia(-33.86379410000001,151.2022304)的纬度和经度,并执行反向地理编码,其结果类型等于管理区域级别2。

https://maps.googleapis.com/maps/api/geocode/json?latlng=-33.86379410000001%2C151.2022304&result_type=administrative_area_level_2&key=YOUR_API_KEY

此请求返回

 "address_components":[
    {
      "long_name":"Council of the City of Sydney",
      "short_name":"Sydney",
      "types":[
        "administrative_area_level_2","political"
      ]
    },
    {
      "long_name":"New South Wales",
      "short_name":"NSW",
      "types":[
        "administrative_area_level_1","political"
      ]
    },
    {
      "long_name":"Australia",
      "short_name":"AU",
      "types":[
        "country","political"
      ]
    }
  ]

我希望这会有所帮助!