XMLHttpRequest
Baseline
Large disponibilité
*
Cette fonctionnalité est bien établie et fonctionne sur de nombreux appareils et versions de navigateurs. Elle est disponible sur tous les navigateurs depuis juillet 2015.
* Certaines parties de cette fonctionnalité peuvent bénéficier de prise en charge variables.
Note : Cette fonctionnalité est disponible via les Web Workers, sauf pour les Service Workers.
Les objets XMLHttpRequest (XHR) permettent d'interagir avec des serveurs. On peut récupérer des données à partir d'une URL sans avoir à rafraîchir complètement la page. Cela permet à une page web d'être mise à jour sans perturber les actions de l'utilisatrice ou de l'utilisateur.
Malgré son nom, XMLHttpRequest peut être utilisé afin de récupérer tout type de données et pas uniquement du XML.
Si vos opérations de communication nécessitent l'échange d'évènements ou de messages avec un serveur, pensez à utiliser les évènements serveur via l'interface EventSource. Pour une communication bidirectionnelle complète, les WebSockets peuvent être une meilleure alternative.
Constructeur
XMLHttpRequest()-
Le constructeur initialise un objet
XMLHttpRequest. Il doit être appelé avant toute autre méthode.
Propriétés d'instance
Cette interface hérite également des propriétés de XMLHttpRequestEventTarget et de EventTarget.
XMLHttpRequest.readyStateLecture seule-
Retourne un nombre représentant l'état de la requête.
XMLHttpRequest.responseLecture seule-
Retourne un objet
ArrayBuffer,Blob,Document, un objet JavaScript ou une chaîne de caractères selon la valeur deXMLHttpRequest.responseType. Cet objet contient le corps de la réponse. XMLHttpRequest.responseTextLecture seule-
Retourne une chaîne de caractères qui contient la réponse à la requête sous forme de texte ou la valeur
nullsi la requête a échoué ou n'a pas encore été envoyée. XMLHttpRequest.responseType-
Retourne une valeur parmi une liste qui définit le type de réponse.
XMLHttpRequest.responseURLLecture seule-
Retourne l'URL sérialisée de la réponse ou la chaîne vide si l'URL est nulle.
XMLHttpRequest.responseXMLLecture seule-
Retourne un objet
Documentqui contient la réponse de la requête ounullsi la requête a échoué, qu'elle n'a pas encore été envoyée ou qu'elle ne peut pas être analysée comme XML ou HTML. Cette propriété n'est pas disponible dans les Web Workers. XMLHttpRequest.statusLecture seule-
Retourne le code de statut de la réponse HTTP de la requête.
XMLHttpRequest.statusTextLecture seule-
Retourne une chaîne de caractères qui contient la chaîne de caractères / réponse renvoyée par le serveur HTTP. À la différence de
XMLHttpRequest.status, tout le texte du statut est inclus ("200 OK" plutôt que "200" par exemple).
Note : Selon la spécification HTTP/2 RFC 7540, section 8.1.2.4: Response Pseudo-Header Fields (angl.), HTTP/2 ne définit pas de méthode pour porter la version ou la raison/phrase incluse dans la ligne de statut HTTP/1.1.
XMLHttpRequest.timeout-
Le temps en millisecondes qu'une requête peut prendre avant d'être terminée automatiquement.
XMLHttpRequest.uploadLecture seule-
Un objet
XMLHttpRequestUploadqui représente le processus de téléversement. XMLHttpRequest.withCredentials-
Retourne
truesi les requêtesAccess-Controlintersites doivent être effectuées en utilisant des informations d'identification telles que des cookies ou des en-têtes d'autorisation ; sinonfalse.
Propriétés non-standard
XMLHttpRequest.mozAnonLecture seule Non standard-
Un booléen. S'il est vrai, la requête sera envoyée sans cookie ou en-tête d'autorisation.
XMLHttpRequest.mozSystemLecture seule Non standard-
Un booléen. S'il est vrai, la politique d'origine unique ne sera pas vérifiée pour la requête.
Méthodes d'instance
XMLHttpRequest.abort()-
Interrompt la requête si elle a déjà été envoyée.
XMLHttpRequest.getAllResponseHeaders()-
Retourne tous les en-têtes de réponse, séparés par CRLF, sous forme de chaîne de caractères, ou
nullsi aucune réponse n'a été reçue. XMLHttpRequest.getResponseHeader()-
Retourne la chaîne de caractères contenant le texte de l'en-tête défini ou
nullsi aucune des réponses n'a été reçue ou si l'en-tête n'existe pas dans la réponse. XMLHttpRequest.open()-
Initialise une requête.
XMLHttpRequest.overrideMimeType()-
Surcharge le type MIME retourné par le serveur.
XMLHttpRequest.send()-
Envoie la requête. Si la requête est asynchrone (le comportement par défaut), la méthode renvoie un résultat dès que la requête est envoyée.
XMLHttpRequest.setAttributionReporting()Contexte sécurisé Obsolète-
Indique que vous souhaitez que la réponse de la requête puisse enregistrer une source d'attribution ou déclencher un évènement.
XMLHttpRequest.setPrivateToken()Expérimental-
Ajoute des informations de jeton d'état privé à un appel
XMLHttpRequest, pour initier des opérations de jeton d'état privé. XMLHttpRequest.setRequestHeader()-
Définit la valeur d'un en-tête de requête HTTP. Vous devez appeler
setRequestHeader()aprèsopen(), mais avantsend().
Évènements
Cette interface hérite également des évènements de XMLHttpRequestEventTarget.
readystatechange-
Déclenché chaque fois que la propriété
readyStatechange. Disponible également via la propriété du gestionnaire d'évènementsonreadystatechange.
Spécifications
| Spécification |
|---|
| XMLHttpRequest> # interface-xmlhttprequest> |
Compatibilité des navigateurs
Voir aussi
- L'interface
XMLSerializer: pour sérialiser un arbre DOM en XML - Utiliser XMLHttpRequest
- L'API Fetch