2012-01-02 7 views
0

J'essaie d'utiliser l'API Google Geocoder pour obtenir une latitude et une longitude à utiliser dans l'API Google Adresses. Tout d'abord, comment puis-je coder l'URL de l'API pour qu'elle renvoie la chaîne JSON? Je pensais que ce serait quelque chose comme une charge jquery, mais cela ne fonctionne pas. J'ai donc cette jolie url qui renvoie les informations dont j'ai besoin mais qui ne fait que déverser un tas de données json. Comment puis-je capturer les données?Réponse de l'API Google JSON

http://maps.googleapis.com/maps/api/geocode/address=12308&sensor=false

function loadScript() { 
    var script = document.createElement("script"); 
    script.type = "text/javascript"; 
    script.src = "http://maps.googleapis.com/maps/api/geocode/address=12308&sensor=false"; 
    document.body.appendChild(script); 
    resultjson = script 
    console.log(resultjson); 
} 
+0

Je ne pense pas que l'API de géocodage de Google ait une méthode d'accès JSONP, ce qui serait nécessaire pour que quelque chose comme ça fonctionne. – Pointy

Répondre

0

Vous pouvez utiliser le géocodage sans le soutien JSONP mais vous devez utiliser leur bibliothèque carte à la place:

Ajouter cette balise script à votre HTML:

<script src="http://maps.google.com/maps/api/js?sensor=false" type="text/javascript"></script> 

Ensuite, ajoutez le JS suivant:

var geocoder = new google.maps.Geocoder(); 
geocoder.geocode(
    {address: "37203" }, 
    function(dataObject, statusObject) { 
     console.log(dataObject); 
    } 
); 
+1

cela n'aura-t-il pas des problèmes de politique de même origine? – Pointy

+0

Mais vous ne pouvez pas faire un appel ajax "plain" interdomaines comme celui-ci. Si Google le supporte, vous devriez faire une demande JSONP ... – nnnnnn