2010-03-19 14 views

Répondre

0

Il est assez facile d'utiliser les API webservice Geonames pour cela, en particulier la méthode the postalCodeSearch. Fonctionne bien dans mon expérience, sauf si vous lancez plusieurs requêtes/seconde, bien que la mise en cache des résultats est généralement utile. (Elles ne changent pas souvent.)

1

utiliser les cartes google api Geocoder

1

Oui, il est assez facile de le faire avec Google Maps géocodage getLocations().

<html> 
    <head> 
    <meta http-equiv="content-type" content="text/html; charset=utf-8"/> 
    <title>Geocoding example</title> 
    <script src="http://maps.google.com/maps?file=api&v=2" type="text/javascript"></script> 
    <script type="text/javascript"> 
    var geocoder; 
    var map; 
    var address = "10001"; //NEW YORK zip 
    function load() 
    { 
     map = new GMap2(document.getElementById("map")); 
     geocoder = new GClientGeocoder(); 
     geocoder.getLocations(address, addToMap); 
    } 
    function addToMap(response) 
    { 
     place = response.Placemark[0]; 
     point = new GLatLng(place.Point.coordinates[1],place.Point.coordinates[0]); 
     map.setCenter(point, 13); 
     marker = new GMarker(point); 
     map.addOverlay(marker); 
     marker.openInfoWindowHtml(place.address); 
    } 
    </script> 
    </head> 
    <body onload="load()" onunload="GUnload()"> 
    <div id="map" style="width: 500px; height: 500px"></div> 
    </body> 
</html> 

Vous pouvez faire un essai en ligne sur le code Google playground.
Amusez-vous!