【问题标题】:How to validate US zip code by country and state using Google's Geocoding component filtering?如何使用 Google 的地理编码组件过滤按国家和州验证美国邮政编码?
【发布时间】:2019-01-06 06:35:05
【问题描述】:

我正在使用 Google 的 Geocoding API 使用组件过滤。

要验证特定国家/地区的邮政编码,例如,我使用以下调用: https://maps.googleapis.com/maps/api/geocode/json?components=postal_code:94301|country:USA

我想添加另一个组件来指示状态。根据documentation,我可以使用“administrativeArea”来做到这一点。

我无法让它工作。 例如,使用邮政编码 94301 和州“Arizona”调用 API 应返回无值,而州“California”应返回相关地址。

我试过了: https://maps.googleapis.com/maps/api/geocode/json?components=postal_code:94301|country:USA|administrativeArea=Arizona

【问题讨论】:

    标签: geocoding google-geocoding-api zipcode


    【解决方案1】:

    您在组件过滤中使用administrativeArea=Arizona。请注意,根据文档,网络服务应使用administrative_area=Arizona

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

    以下组件可用于影响结果,但不会强制执行:

    • 路线与路线的长名称或短名称匹配。
    • 地点与地点和子地点类型匹配。
    • administrative_area 匹配所有 Administrative_area 级别。

    当我执行以下请求时

    https://maps.googleapis.com/maps/api/geocode/json?components=administrative_area%3AArizona%7Cpostal_code%3A94301%7Ccountry%3AUS&key=MY_API_KEY

    我收到回复

    {
      "results":[    
      ],
      "status":"ZERO_RESULTS"
    }
    

    您也可以在 Geocoder 工具中看到这一点:

    https://developers-dot-devsite-v2-prod.appspot.com/maps/documentation/utils/geocoder/#in_administrative_area%3DArizona%26in_postal_code%3D94301%26in_country%3DUS%26options%3Dtrue

    https://developers-dot-devsite-v2-prod.appspot.com/maps/documentation/utils/geocoder/#q%3D%26in_country%3DUS%26in_administrative_area%3DCalifornia%26in_postal_code%3D94301

    我希望这会有所帮助!

    【讨论】:

      猜你喜欢
      • 2013-10-09
      • 2014-07-24
      • 2011-11-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多