Sauver le résultat d'un $.get dans une variable JS

Swiss Knight Messages postés 1956 Date d'inscription   Statut Membre Dernière intervention   -  
 Utilisateur anonyme -
Salut,

Je souhaite enregistrer le résultat d'un $.get jQuery d'une url d'un serveur cartographique dans une variable javascript mais je n'y arrive pas, c'est désespérément vide dans la console...

Voici le bout de code JS qui me pose problème, ce sera plus parlant :

var url = "localhost:8080/geoserver/layers/ows?service=WFS&version=1.0.0&request=GetFeature&typeName=layers:macouche&maxFeatures=50&outputFormat=application%2Fjson";

var geojsonData;
$.getJSON( url, function( data ) {
geojsonData = data;
});

console.log(geojsonData);


Résultat du console.log : undefined.


Merci d'avance.⁹
A voir également:

2 réponses

Utilisateur anonyme
 
Bonjour

Tu essayes d'afficher la variable avant qu'elle ne soit initialisée.
Quand tu fais un appel à $.getJSON, tu définis la fonction function( data ) mais elle n'est pas appelée immédiatement : elle ne sera appelée que plus tard, quand la requête indiquée dans l'url aura reçu sa réponse.
Et toi tu demandes à afficher geojsonData aussitôt après l'appel à $.getJSON : c'est trop tôt.
Il faut attendre la réponse à la requête.
Il tu suffit de faire l'affichage à l'intérieur de la function( data ), immédiatement après avoir fait
geojsonData = data;
. Là, tu es sûr que la variable est définie.

le père. (Puisque ce !#é|?§ de forum ne sait plus gérer les accents dans les pseudos)
1
Utilisateur anonyme
 
+1
0
Utilisateur anonyme
 
Salut,

si tu fait console.log(data) ???

Je ne sais pas si cela est normal mais l'url pointe sur localhost. Dans tout les case j'ajouterais à ta place le http://
0