Récupération donnée Ajax, qui ne marche pas, qui ne marche pas [Résolu]

Signaler
-
 Leo98 -
Bonjour, j'essaye faire ça, mais ça ne marche pas, je comprends qu'il y a un problème synchrone/asynchrone, mais j'ai besoin faire, et en plus, je ne dois pas utiliser then ou autre chose, j'ai besoin avoir le contenu dans la variable.
Si vous connaissez comment faire, s'il vous plaît, aidez moi, merci par avance pour votre future aide.

function getData(url) {
    var xhr = new XMLHttpRequest;

    xhr.open("GET", url);
    xhr.send();
    xhr.onreadystatechange = function(){
        if (this.readyState == 4 && this.status == 200) {
return xhr.responseText;
      };
   }
}

let datas = getData('http://localhost/jsTest/test.php');

console.log(datas); // Ça doit afficher le contenu test.php

EDIT : Ajout des balises de code

Cordialement,

1 réponse

Messages postés
32938
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
10 juin 2021
3 555
Bonjour,

Pourquoi pas
    xhr.open("GET", url, false); // `false` makes the request synchronous


et à la place du onreadyState
if (xhr.status === 200) {
  return xhr.responseText;
}
Bonjour, merci pour votre réponse rapide, et merci pour cette solution, ça fait plusieurs jours que recherche.
Par contre est ce que ça peut poser un problème, voici le message d'erreur : '[Deprecation] Synchronous XMLHttpRequest on the main thread is deprecated because of its detrimental effects to the end user's experience. For more help, check https://xhr.spec.whatwg.org/.' ?

Une question, est ce qu'on peut faire la même chose sur la fonction fetch ?


Merci, par avance, vous m'avez beaucoup aidé.


Cordialement,
Messages postés
32938
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
10 juin 2021
3 555 > Leo98
>
Messages postés
32938
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
10 juin 2021

Merci beaucoup :)