谷歌地图反向地理编码获取国家名称,英国国家

时间:2011-03-10 15:31:49

标签: google-maps-api-3 geocoding reverse-geocoding countries

我正在使用谷歌地图Api V3并使用反向地理编码来查找点击的国家/地区的名称。 除了英国以外的国家,这似乎适用于大多数国家。

英国由英格兰,苏格兰,威尔士和北爱尔兰组成,这些国家分别是4个国家,但谷歌地图(以及大多数其他国家的东西)都将它们视为“英国”。

我需要知道英国哪个国家/地区已被点击,而不仅仅是点击了英国!

我正在使用以下javascript,我目前只是使用视觉工作室“观看”功能深入挖掘“结果[1]”以查看包含的内容。

  function initialize() {
    geocoder = new google.maps.Geocoder();
    var latlng = new google.maps.LatLng(51.8052184317649, -4.965819906250006);
    var myOptions = {
        zoom: 5,
        center: latlng,
        mapTypeId: google.maps.MapTypeId.ROADMAP
    };
    map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);

    google.maps.event.addListener(map, 'click', function (event) {
        if (confirm('Is this the location you would like to you for your company?')) {

            geocoder.geocode({ 'latLng': event.latLng }, function (results, status) {
                if (status == google.maps.GeocoderStatus.OK) {
                    if (results[1]) {

                    }
                }
            });
 }
        });
    }

如果我在地图缩放到相当远的地方时点击国家名称(即威尔士)返回类型“administrative_area_level_1”和“政治”但是当你放大它不再那里因为它只是给出了地址包含“威尔士”。

有谁知道我怎么绕这个?我相信其他英国人已经遇到过这个问题了吗?

2 个答案:

答案 0 :(得分:0)

无法解决如何反转地理编码以获得英国国家,因为我认为这实际上是不可能的!

结束使用邮政编码,然后按国家计算! 不是最好的,但它对我有用!

答案 1 :(得分:0)

英国国家/地区代表administrative_area_level_1结果,请查看此示例中的第二个结果(不要依赖address_components):

https://maps.googleapis.com/maps/api/geocode/json?&latlng=51.641033,-0.647507