2011-05-27 2 views
4

pour quelque raison que ce code ne semble pas fonctionnerParse lieu google JSON avec javascript

var request = "https://maps.googleapis.com/maps/api/place/search/json?"; 
request = request + "location="+lat+","+lng+"&"; 
request = request + "radius=500&"; 
request = request + "types=&"; 
request = request + "name=&"; 
request = request + "sensor=false&"; 
request = request + "key="+key; 

$.getJSON(request, function(data){ alert(data); }); 

La chaîne est valide et j'obtenir le résultat si je charge juste dans mon navigateur. Voyez-vous quelque chose de mal ici?

EDIT: bien, problème résolu. L'API Google Adresses n'accepte pas les appels ajax jsonp. Je vais devoir utiliser leur API javascript à la place. Voir ce fil pour plus de détails:

How do I use Google Places to get an array of Place names?


Merci pour vos réponses. Je fais donc maintenant l'appel API avec le code suivant:

$.ajax({ 
    url: "https://maps.googleapis.com/maps/api/place/search/json", 
    dataType: 'jsonp', 
    data: { 
     location:lat+","+lng, 
     radius:500, 
     types:"", 
     name:"", 
     sensor:"false", 
     key:key 
    }, 
    success: function(data) { 
     alert(data); 
    } 
}); 

Whiich ne montre aucune zone d'alerte. En inspectant le code, je surprends un message d'erreur:

"html_attributions" : [], 
    json:2Uncaught SyntaxError: Unexpected Token : 

"Résultats": [ {

Cependant, après ce message d'erreur, dans la console, les données demandées montre effectivement dans les "résultats" field ... Une idée?

+1

Cela nécessite plus de contexte; où est ce code en cours d'exécution, et où 'lat',' lng' et 'key' sont-ils définis? –

+0

Recevez-vous un message d'erreur spécifique dans la console? –

+0

http://en.wikipedia.org/wiki/Same_origin_policy –

Répondre

1

L'API Google Places ne prend pas en charge les demandes JSONP.

+0

Super à savoir, mais une référence serait merveilleux pour plus d'informations. –

+0

@agrothe Vous ne pouvez pas prouver que quelque chose est absent avec référence, comme le dieu par exemple. – bjornd