使用Google Maps API对英国邮政编码进行地理编码的最佳方式?

jos*_*ley 7 google-maps geocoding google-maps-api-2

英国邮政编码的地理编码最有效和准确的方法是什么?使用内置的地理编码对象会导致大量模糊的结果(许多邮政编码只返回一般区域).

我可以通过JavaScript插入免费的英国邮政编码地理编码服务吗?

joh*_*rds 7

编辑:为了更清楚,这使用谷歌搜索API中的本地搜索,而不是谷歌地图api进行更准确的地理编码.

最好的方法是使用Google Search Api.

如果您获得了api密钥并完成了所有设置:http://code.google.com/apis/ajaxsearch/

var localSearch;
var map;
var icon;
var addressMarkerOptions;
google.load("search", "1");
google.load("maps", "2");
google.setOnLoadCallback(initialize);

function initialize()
{
  localSearch = new GlocalSearch();
  icon = new GIcon(G_DEFAULT_ICON);
  addressMarkerOptions = { icon:icon , draggable: false};
  map = new GMap2(document.getElementById("map"));
  map.addControl(new GLargeMapControl());
  map.addControl(new GMapTypeControl());
  plotAddress("OX4 1FJ");
}

/**
* This takes either a postcode or an address string
*
*/
function plotAddress(address)
{
  localSearch.setSearchCompleteCallback(null, 
    function() {

      if (localSearch.results[0])
      {     
        var resultLat = localSearch.results[0].lat;
        var resultLng = localSearch.results[0].lng;
        var point = new GLatLng(resultLat,resultLng);
        var marker = new GMarker(point, addressMarkerOptions);
        map.addOverlay(marker);
        map.setCenter(point, 5, G_NORMAL_MAP);
      }
      else
      {
        alert('address not found');
      }
    });

  localSearch.execute(address + ", UK");
}
Run Code Online (Sandbox Code Playgroud)

  • 可悲的是,搜索API已被弃用. (3认同)