Widget météo

Résolu/Fermé
anthonyr_25 Messages postés 165 Date d'inscription mercredi 5 janvier 2022 Statut Membre Dernière intervention 6 juillet 2022 - Modifié le 8 janv. 2022 à 22:12
jordane45 Messages postés 38205 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 12 juin 2024 - 9 janv. 2022 à 12:00
Bonjour,

J'aimerais faire un widget météo mais je n'arrive pas à récupéré les nuages dans l'api..
j'ai l'impression que c'est les bons éléments mais sa me marque "undefined"
pourriez vous m'aidez ?

var callBackGetSuccess = function(data) {
    console.log("donnees api", data)
    //alert("Meteo temp  : "  + data.main.temp);
    var element = document.getElementById("zone_meteo");
    element.innerHTML = "La temperature est de " + data.main.temp + " C° " + data.weather.main + " a";
}

function buttonClickGET(){
    var queryLoc = document.getElementById("queryLoc").value;

    var url = "https://api.openweathermap.org/data/2.5/weather?q="+queryLoc+"&appid=c21a75b667d6f7abb81f118dcf8d4611&units=metric"

    $.get(url, callBackGetSuccess).done(function(){
        //alert( "second success" );
      })
      .fail(function(){
        alert( "error" );
      })
      .always(function(){
        //alert( "finished" );
      });
}


J'ai éssayer avec data.weather.description aussi mais sa me renvoie la même chose "undefined"...



merci d'avance !

Configuration: Windows / Chrome 96.0.4664.110
A voir également:

3 réponses

jordane45 Messages postés 38205 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 12 juin 2024 4 676
8 janv. 2022 à 22:15
var url = "https://api.openweathermap.org/data/2.5/weather?q="+queryLoc+"&appid=c21a75b667d6f7abb81f118dcf8d4611&units=metric"
$.get(url, function(data) {
  console.log("donnees api", data)
  //alert("Meteo temp  : "  + data.main.temp);
  var element = document.getElementById("zone_meteo");
  element.innerHTML = "La temperature est de " + data.main.temp + " C° " + data.weather.main + " a";
});


1
anthonyr_25 Messages postés 165 Date d'inscription mercredi 5 janvier 2022 Statut Membre Dernière intervention 6 juillet 2022 6
Modifié le 8 janv. 2022 à 22:31
Déjà je te remercie encore #lemeilleurmodo
en revanche...
Sa ne fonctionne pas ... à mon avis il manque une :

<< var url2 = "site" + queryLoc + " ? (et c'est sa que je recherche je pense, il faudrait l'api du weather main) " >>

Je dit bien je pensse ...
Cars la température je l'ai déjà mais je n'arrive pas à récupérer le weather > main = "clouds"
0
jordane45 Messages postés 38205 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 12 juin 2024 4 676
8 janv. 2022 à 22:42
que donne le console.log ?

Normalement.. il te donne un truc du genre


et donc, tu peux voir que les données ne se trouvent pas directement dans "main" .. tu as un niveau intermédiaire...

essayes avec un truc du genre
data.weather[0].main 
0
anthonyr_25 Messages postés 165 Date d'inscription mercredi 5 janvier 2022 Statut Membre Dernière intervention 6 juillet 2022 6
8 janv. 2022 à 22:56
Hoooo sa marche !! je te remercie beaucoup Jordane tu m'aide énormément
J'ai pas du tout l'habitude avec les API moi j'était partie sur quelque chose comme sa :
data.weather.[1] (vue que c'est la deuxième information..) ou
data.weather[main] ...
c'est pas vraiment intuitif haha
Mais en tout cas vraiment merci mille fois de m'accompagner pendant ma formation grâce à tes solutions à tout les problèmes.. pour moi t'est genre le Einstein de l'informatique
0
jordane45 Messages postés 38205 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 12 juin 2024 4 676
Modifié le 9 janv. 2022 à 12:01
C'est juste la manipulation d'objet JSON et d'array ... que ça provienne d'une API ou non n'y change rien.


. pour moi t'est genre le Einstein de l'informatique

J'ai sûrement l'air aussi fou .. mais je suis loin de son intelligence :-)
0