为什么在获取结果时,我的语言参数有时会被忽略?
我这样发送请求
https://maps.googleapis.com/maps/api/geocode/json?latlng={lat},{lng}&language=en&key={GOOGLE_MAPS_API_KEY}
大多数情况下,结果是英文,但有时会是印地语。为什么会这样?以及如何确保结果始终为英文的解决方案是什么?
解决方案
language=en参数只是语言偏好,并不能严格保证。即使英语数据不可用,或当地表示被认为更适合该位置,Google地理编码仍可能返回本地语言名称。这是反向地理编码的预期行为。 参考链接
为提高一致性,你可以:
- 继续传递language=en。
- 如果坐标在印度且需要印度特定结果,请添加region=in。
- 使用address_components,并选择诸如locality、administrative_area_level_1、country等具体组件,而不仅仅依赖formatted_address。
- 如果需要严格英文输出,请在你方进行后处理或翻译非英文组件。
站内所有文章版权归属LeftHeroAI导航站,无授权禁止任何主体转载、抄袭、复制内容,亦不得私自架设镜像站点。一经侵权,本站将通过法律途径追责。