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

Résolu/Fermé
Leo98 - Modifié le 31 mai 2021 à 23:14
 Leo98 - 1 juin 2021 à 11:12
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,
A voir également:

1 réponse

jordane45 Messages postés 38138 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 17 avril 2024 4 649
31 mai 2021 à 23:20
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;
}
1
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,
0
jordane45 Messages postés 38138 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 17 avril 2024 4 649 > Leo98
31 mai 2021 à 23:58
0
Leo98 > jordane45 Messages postés 38138 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 17 avril 2024
1 juin 2021 à 11:12
Merci beaucoup :)
0