Google地图并不知道Girne在塞浦路斯

时间:2017-10-30 18:57:23

标签: json google-maps google-maps-api-3

我在一个Web应用程序上工作,该应用程序允许用户在世界上任何公共场所创建活动。我们允许他们以各种方式搜索事件,包括按国家/地区。我们使用maps API来识别创建和搜索事件的位置。

有一个错误报告,在塞浦路斯北部海岸城市Girne的用户没有正确检索该国家。例如,当我搜索纽约市时,我使用这样的URL :(识别信息被删除)

https://maps.googleapis.com/maps/api/geocode/json?client=xxxxxx&result_type=&address=New+York+City&language=en&region=US&location_type=&signature=xxxxxx

我得到的响应包含此JSON信息:

"address_components" : [
        {
           "long_name" : "New York",
           "short_name" : "New York",
           "types" : [ "locality", "political" ]
        },
        {
           "long_name" : "New York",
           "short_name" : "NY",
           "types" : [ "administrative_area_level_1", "political" ]
        },
        {
           "long_name" : "United States",
           "short_name" : "US",
           "types" : [ "country", "political" ]
        }
     ],

但是,如果我输入类似的Girne请求:

https://maps.googleapis.com/maps/api/geocode/json?client=xxxxxx&result_type=&address=Girne&language=en&region=US&location_type=&signature=xxxxxx

同一字段仅包含此内容:

"address_components" : [
            {
               "long_name" : "Girne",
               "short_name" : "Girne",
               "types" : [ "locality", "political" ]
            }
         ],

这是地图中数据的错误吗?看起来,当我在maps.google.com中搜索Girne或Girne中的任何特定地址时,它会找到一个位置,但也无法将该国家标识为塞浦路斯。

1 个答案:

答案 0 :(得分:0)

我们为自己解决了这个问题,但相关问题是正确的。北塞浦路斯是一个有争议的领土,从法律上讲,我们不应该显示国名,如果这样做实际上是一个政治声明。我们发现这些地方最近作为缺少国家的活动地点输入了我们的数据库:

  • Afytos:希腊附近
  • Ari⪙ el - 耶路撒冷附近约旦河西岸的一部分
  • 吉尔尼;皮拉 - 塞浦路斯岛上的
  • 新加坡的一些地方
  • Istog - 塞尔维亚
  • 刻赤/刻赤' - 克里米亚

所以,我学到了一些有关全球政治的有趣内容,而且我们现在还有一个"其他"我们的搜索选项中的国家/地区。