地理编码 - 不同的邮政编码响应

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

我正在使用地理编码 API 传递邮政编码(主要是 GB)来验证邮政编码是否有效(使用 address_components 和类型,如果它返回“postal_code”我认为它是有效的)但我发现了 2 个问题.

这也是谷歌地图验证邮政编码的最佳方法吗?

  1. 我正在发布 https://maps.googleapis.com/maps/api/geocode/json?address=GU27YP&components=country:GB&key= GU2 7YP 的邮政编码发送的地方,在回复中它给了我一个不同的邮政编码 (GU2 7UP)。为什么要这样做,是不是告诉我邮政编码不存在了(2016 年被删除了),现在另一个 1 已经取代了它?

“地址组件”:[ { "long_name": "GU2 7UP", "short_name": "GU2 7UP", “类型”:[ “邮政编码” ] },

  1. 我正在验证邮政编码 OL1 1NY (GB),它返回了一个肯定的结果,但皇家邮政不再识别该邮政编码,并于 2022 年 12 月将其删除。有没有办法让谷歌更新它?

“地址组件”:[ { "long_name": "OL1 1NY", "short_name": "OL1 1NY", “类型”:[ “邮政编码” ] },

对于这两个问题,我都希望在没有邮政编码匹配的情况下给我答复,并在下面说明,就像对另一个无效的邮政编码 ME4 4QQ 所做的那样

        "address_components": [
            {
                "long_name": "United Kingdom",
                "short_name": "GB",
                "types": [
                    "country",
                    "political"
                ]
            } 

谢谢

google-geocoding-api postal-code
1个回答
0
投票

组件过滤 可能是更好的方法,至少它可以防止 假阳性 结果,例如请求 GU2 7YP 时返回 GU2 7UP:

https://maps.googleapis.com/maps/api/geocode/json?components=country:GB|postal_code:GU2%207YP 返回

ZERO_RESULTS
因为
components
参数 上强制执行完全匹配
 postal_code:GU2%207YP

是否返回结果主要取决于谷歌地图数据是否准确和最新。

另一种选择是使用新的地址验证API广义上讲提供2种不同的“结果”:

  1. address
    :有多少输入被确认为(部分)有效的邮政地址
  2. geocode
    :谷歌地图将在哪里定位输入(可能或可能不匹配
    address
    )。

更多细节在了解验证响应.

例如,Address Validation Demo 返回一个

address
本质上说“是的,GU2 7YP 是一个有效的英国邮政编码”,但返回的
geocode
实际上是 GU2 7UP(地点 ID :ChIJm7gwBcLQdUgRSfAroiN7KYw)因为那是(壁橱)可用的。

© www.soinside.com 2019 - 2024. All rights reserved.