获取英语和母语城市名称列表

本文关键字:列表 城市 母语 英语 获取 | 更新日期: 2023-09-27 18:02:44

我有一个web应用程序,需要两个下拉列表。使用本国语言的国家之一;语言由应用程序决定。另一个是那个国家的城市,

我在很多网站上都看到过,但是找不到任何方法。我试过谷歌修改地理编码,但无法通过母语:

https://maps.googleapis.com/maps/api/geocode/json?latlng=40.714224,-73.961452&location_type=ROOFTOP&result_type=street_address&lang=?????

有geonames.org,但不能定义本机语言。我也试过OpenStreetMap.org,但无法理解API。

我希望输出是这样的:
沙特阿拉伯->Riad

المملكة العربية السعودية—> الرياض

如果用户是英语,因为它是本地语言所以列表将同时包含

欢迎选择

获取英语和母语城市名称列表

你不能要求google地理编码api以本地语言返回位置名称,除非你的意思是用户本地而不是该位置本地。

默认情况下,API将根据用户位置浏览器设置尝试加载最合适的语言。一些api允许您在发出请求时显式地设置语言

你能得到的最接近的可能是下面的,但要记住这将是非常容易出错的:

  • 查询一次lang=en
  • 解析types=countryshort_name
  • 为自己构建一个查找表,将上一步的数据翻译为该国家的本地语言代码
  • 第二次查询lang={languageCode}

这里是一个语言代码列表供参考:https://developers.google.com/maps/faq#languagesupport