jQuery et Google Maps réponse json
Je vais avoir des ennuis geo informations de localisation à partir de l'api google maps
le code est assez simple
$.ajax({
type: "GET",
cache: false,
url: "http://maps.googleapis.com/maps/api/geocode/json",
dataType: "jsonp",
data: {
address: "Ljubljana " + "Slovenia",
sensor: "false"
},
jsonpCallback:'json_response',
success: function(data) {
top.console.debug(data);
$('#location_setter').dialog('close');
},
error: function() {
alert("Error.");
}
});
function json_response(data){
alert("works");
}
J'obtiens toujours une erreur.
J'ai essayé directement de trop (j'ai lu quelque part que la fonction de rappel doit être fixé à la fin...
$.ajax({
type: "GET",
cache: true,
url: "http://maps.googleapis.com/maps/api/geocode/json?address=Ljubljana Slovenia&sensor=false",
dataType: "jsonp",
jsonpCallback:'json_response',
success: function(data) {
top.console.debug(data);
$('#location_setter').dialog('close');
},
error: function() {
alert("Error.");
}
});
l'url de la requête est correctement formé:
et il me donne le bon json
veuillez en informer!
Vous pouvez "jouer" avec elle à http://jsfiddle.net/PNad9/
OriginalL'auteur DS_web_developer | 2011-04-14
Vous devez vous connecter pour publier un commentaire.
si ça aide quelqu'un... j'ai abandonné et j'ai changer complètement de la logique elle-même, et maintenant il fonctionne comme prévu:
j'ai d'abord ajouté google maps js dans le corps
comme vous pouvez le voir, j'ai spécifié la fonction de rappel get_longlat...
donc j'ai défini cette fonction et utilisé google de géocodage à l'objet
Le NOUS de variables à l'intérieur de notre propre espace de noms pour les PARAMÈTRES de l'UTILISATEUR
espère que cela aide quelqu'un
N'est-ce pas incroyable que cela fonctionne? merci 🙂
OriginalL'auteur DS_web_developer
Voici un bon post sur pourquoi vous avez été le problème de la question d'origine. L'URL que vous faites la demande à google au (http://maps.googleapis.com/maps/api/geocode/json) ne retourne pas une jsonp parseable réponse, elle retourne raw d'un objet JSON. Google refuse d'emballer le JSON dans le callback fournie.
Le correctif de ce, de façon plus ou moins de ce que je peux dire, c'est de faire votre demande à cette adresse: http://maps.google.com/maps/geo et d'inclure une carte Google Maps API key dans votre demande. Aussi il semble y avoir une nécessité de veiller à ce que le rappel de paramètre dans la requête est le dernier paramètre de la chaîne de requête.
Ici est un jsfiddle d'un parseable réponse du service (même si c'est de retourner une erreur car il n'est pas valide Google Maps API key (clé): http://jsfiddle.net/sCa33/
L'autre option est de faire ce que vous l'avez déjà fait, il me semble, et l'utilisation de Google Geocoder l'objet pour exécuter la demande.
OriginalL'auteur Derek
J'ai pris un coup d'oeil sur le problème mais je ne peux pas comprendre ce qu'il se passe. Une chose que j'ai trouve, c'est que si j'ajoute un paramètre de données à l'erreur et d'alerte(de données.d'état), il donne un code 200. Le seul endroit que j'ai pu trouver c'était de le résoudre à la réussite de code pour la v2?!
Aussi je ne suis pas sûr que vous pouvez utiliser qui jsonp car la lecture de la documentation, il semble mettre les paramètres dans la chaîne de requête? Quand je l'ai enlevé les jsonpcallback et de modifier le type de données en json le code de réponse a commencé à dire 0.
Pas beaucoup d'aide désolé mais je dois aller travailler maintenant.
OriginalL'auteur rtpHarry
OriginalL'auteur Ayoub Jawadi