地图框地理编码语言



Mapbox API很好地支持地理编码请求,但我总是得到英文的结果。我希望能够以特定语言获得结果。

对于 Mapbox.js API,可以用不同的语言显示地图(通过更改样式),但我找不到正确翻译地理编码请求的方法。

例如,如果我经过城市"根特",我希望看到它在东弗兰德伦省和比利时乡村。但是,我得到"根特,东弗兰德伦,比利时"。 这将使用如下请求来完成:https://api.mapbox.com/geocoding/v5/mapbox.places/Gent.json?country=be&access_token=MYACCESSTOKEN

有没有办法获得正确翻译的结果?也许使用设置或额外参数?

我在Streets-v8(可能在mapbox.places)中看到的本地化名称是name_enname_esname_frname_runame_zh

这看起来您需要向 Mapbox 提交功能请求,至少您可以获得对name_fr的支持。

我喜欢使用Mapbox命令行界面来查看Mapbox查询的响应。 此特定查询给出的响应为"place_name": "Gent, Oost-Vlanderen, Belgium",

mapbox-cli>   mapbox geocoding 'Gent' --country be 

我也在查询中尝试了Ghent,但仍然收到英语

该镇在 Mapbox 语言切换示例中显示为根特。

看起来解决方案已经实施!

只需在初始化对象上传入一个语言字段,如下所示:

var geocoder = new MapboxGeocoder({ language: 'es' }); //change lang to spanish

从这些文档中得到它:https://github.com/mapbox/mapbox-gl-geocoder/blob/master/API.md#mapboxgeocoder

最新更新