目前我正在使用以下网址获取指定地址的详细信息。
控制器中生成上述URL的相应代码如下:
var query = [address.streetName, address.streetNumber, address.zipCode, address.city, 'Deutschland'].join(' ');
L.Control.Geocoder.jsonp('https://nominatim.openstreetmap.org/search/', {
q: query,
limit: 1,
format: 'json'
}, function (data) {
if (0 < data.length && ('way' === data[0].osm_type || 'house' === data[0].type)) {
//do something here
}
}, this, 'json_callback');
上述查询将返回如下结果:
“地点” 显示名称 : “12,Dolivostraße,Pallaswiesenviertel,Darmstadt,Regierungsbezirk Darmstadt, Hesse, 64293,Germany” 重要性 : 0.111 LAT : “49.8766854” 执照 : “数据©OpenStreetMap贡献者,ODbL 1.0。http://www.openstreetmap.org/copyright” LON : “8.6396259” osm_id : “1791379113” osm_type : “节点” place_id : “18711662” 类型 : “房子”
我希望 'Hessen' (这是德国使用的名称)而不是 'Hesse' 。怎么做到这一点?任何帮助都会很棒:)
答案 0 :(得分:0)
请参阅Nominatim documentation。它提到了参数accept-language
:
显示搜索结果的首选语言顺序会覆盖 “Accept-Language”HTTP标头中指定的值。 使用标准的rfc2616接受语言字符串或简单的逗号 分开的语言代码列表。
它允许您根据RFC2616中描述的Accept-Language请求标头指定语言列表。要首选德语和英语,只需将&accept-language=de,en
添加到您的网址。