我正在为我的项目使用 Google Places API,我发现不同的地方在其地址组件中会有不同的本地化名称。
例如:
- 里斯本(葡萄牙(的一些地方将有一个
locality
名称Lisbon
,而另一些地方将有Lisboa
。 - 巴塞罗那的一些地方会有一个
administrative_area_level_1
的名字Catalonia
,而另一些地方会有Catalunya
。
我的问题是:
- 有没有办法使用相同的参考语言获得一致的结果?
- 有没有办法帮助谷歌修复这种不一致的行为?
PS:我的目的是能够从 Google 地方信息API 数据执行基于文本的搜索,而这些本地化差异无济于事。
这可能是按预期工作,或者某些地方在谷歌地图上注册地址的方式不一致。
预期行为是将本地语言(里斯本、加泰罗尼亚(用于街道级地址,而用户的首选语言用于其他地方(邮政编码和政治目的(。在首选非本地语言时进行反向地理编码可显示以下内容:
https://maps.googleapis.com/maps/api/geocode/json?&latlng=38.716322,-9.149895&language=en
street_address
: R. 塞西利奥·德索萨 84, 1200-009里斯本, 葡萄牙locality
:葡萄牙里斯本
https://maps.googleapis.com/maps/api/geocode/json?&latlng=41.738528,1.851196&language=en
street_address
: C-16C, 2, 08243 曼雷萨, 巴塞罗那(加泰罗尼亚(, 西班牙postal_code
: 08243 曼雷萨, 巴塞罗那(加泰罗尼亚(, 西班牙
(加泰罗尼亚/加泰罗尼亚/加泰罗尼亚通常不在formatted_address
(
但是,可能存在注册的地址没有正确链接到适当的政治实体,例如使用"加泰罗尼亚"作为硬编码地址组件,而不是作为administrative_area_level_1本身的参考。这些地址的名称不一致,即使对于街道级地址也是如此。这种情况应该很少见,但请考虑在发现错误时提交错误。