7

我正在建立一个需要获取所有谷歌地图位置的网站,从国家名称到最小的村庄。这是api中的任何地方吗?因为它无处可寻。

4

2 回答 2

2

您需要解析响应以获取该数据,例如,如果您想获取国家,结果是您通过调用反向地理编码获得的结果对象: https ://developers.google.com/maps/documentation/ javascript/地理编码#ReverseGeocoding

那么获取国家的功能将是:

       function getCountry(results) {
         var geocoderAddressComponent,addressComponentTypes,address;
         for (var i in results) {
           geocoderAddressComponent = results[i].address_components;
           for (var j in geocoderAddressComponent) {
             address = geocoderAddressComponent[j];
             addressComponentTypes = geocoderAddressComponent[j].types;
             for (var k in addressComponentTypes) {
               if (addressComponentTypes[k] == 'country') {
                 return address;
               }
             }
           }
         }
        return 'Unknown';
      }
于 2012-09-26T16:08:28.053 回答
1

如果您需要根据地理坐标(纬度和经度)在 Google Maps API v3 地图上与某个地点相关联的“名称”,请使用反向地理编码器,它会返回该位置的多个级别的信息。

文档中的示例

请注意,除了不一定与 Google Maps API v3 磁贴相关的事实外,geonames.org可能具有您需要的信息或限制较少的服务来获取它。

于 2012-09-26T14:34:59.780 回答