Google商家信息自动填充功能会在不同地区之间返回不同的地址组件并放置详情

时间:2017-03-22 16:24:27

标签: google-maps google-places-api google-places

如果您参加此演示(https://developers.google.com/maps/documentation/javascript/examples/places-autocomplete-addressform),请输入以下内容:

  1. 双子塔 - >州将是" Wilayah Persekutuan Kuala 吉隆坡"
  2. 吉隆坡 - >国家将成为"瓜拉的联邦直辖区 吉隆坡"
  3. 第二个是"区域"选项(https://developers.google.com/places/web-service/autocomplete#place_types)。我期待这个州是相同的,但他们不是。

    我也试过玩&language=en,但它没有帮助。

    我的最终目标是在我的数据库中有 Petronas Twin Towers ,但我希望将其与相匹配。我的搜索自动填充功能使用区域,它将返回吉隆坡联邦直辖区,但它不会匹配 Wilayah Persekutuan Kuala Lumpur

    我能想到的一个解决方案是获取纬度和经度,然后找到最近的记录,但查询速度非常慢。

    还有其他解决方案吗?

1 个答案:

答案 0 :(得分:2)

检查地图制作工具中的状态功能我可以看到“Wilayah Persekutuan Kuala Lumpur”和“Federal Territory of Kuala Lumpur”是不同语言的名称。

https://mapmaker.google.com/mapmaker?gw=90&iwloc=0_0&dtab=history&cid=2534998778471541913

enter image description here

不确定应用什么逻辑来获取位置详细信息中管理区域级别1的名称。我想这可能是因为Petronas Twin Towers的地方是在Google My Business中创建的,并且已经为其分配了马来语,因此API会检测该地点的语言并将此语言应用于地址组件。

看起来像你提到的反向地理编码是获得英文名称的唯一可靠方式:

https://maps.googleapis.com/maps/api/geocode/json?latlng=3.1579%2C101.7116&language=en&result_type=administrative_area_level_1&key=YOUR_API_KEY