谷歌地图从latLng获取邮政编码

问题描述 投票:0回答:2

一直试图找到一种方法从latlng位置提取邮政编码,但我不完全确定如何做到这一点。有人可以直接指向我,我使用谷歌api自动完成。

我尝试使用address_components但它只给我短/长名称和类型。

javascript google-maps reverse-geocoding
2个回答
1
投票

您需要使用其他服务。 postcodes.io是免费的,开源的并使用开放数据。您要查找的请求是:

GET api.postcodes.io/postcodes?lon=:longitude&lat=:latitude

从谷歌地图获取长拉特,然后单独请求邮政编码服务,以获得您正在寻找的邮政编码。

以上服务仅涵盖英国邮政编码。您可能需要为不同的国家/地区使用多种服务。

看到这个related question on GIS Stack Exchange


0
投票

如果返回的数据被称为“地址”......

var arr = addresses.results[0].address_components,
    i = 0,
    len = arr.length;
for (i; i < len; i++) {
    if (arr[i].types[0] === "postal_code") {
        alert(arr[i].long_name)
    }
}
© www.soinside.com 2019 - 2024. All rights reserved.