Cette page a été traduite à partir de l'anglais par la communauté. Vous pouvez contribuer en rejoignant la communauté francophone sur MDN Web Docs.

View in English Always switch to English

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.

EventTarget XMLHttpRequestEventTarget XMLHttpRequest

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.readyState Lecture seule

Retourne un nombre représentant l'état de la requête.

XMLHttpRequest.response Lecture seule

Retourne un objet ArrayBuffer, Blob, Document, un objet JavaScript ou une chaîne de caractères selon la valeur de XMLHttpRequest.responseType. Cet objet contient le corps de la réponse.

XMLHttpRequest.responseText Lecture seule

Retourne une chaîne de caractères qui contient la réponse à la requête sous forme de texte ou la valeur null si 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.responseURL Lecture seule

Retourne l'URL sérialisée de la réponse ou la chaîne vide si l'URL est nulle.

XMLHttpRequest.responseXML Lecture seule

Retourne un objet Document qui contient la réponse de la requête ou null si 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.status Lecture seule

Retourne le code de statut de la réponse HTTP de la requête.

XMLHttpRequest.statusText Lecture 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.upload Lecture seule

Un objet XMLHttpRequestUpload qui représente le processus de téléversement.

XMLHttpRequest.withCredentials

Retourne true si les requêtes Access-Control intersites doivent être effectuées en utilisant des informations d'identification telles que des cookies ou des en-têtes d'autorisation ; sinon false.

Propriétés non-standard

XMLHttpRequest.mozAnon Lecture 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.mozSystem Lecture 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 null si 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 null si 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ès open(), mais avant send().

Évènements

Cette interface hérite également des évènements de XMLHttpRequestEventTarget.

readystatechange

Déclenché chaque fois que la propriété readyState change. Disponible également via la propriété du gestionnaire d'évènements onreadystatechange.

Spécifications

Spécification
XMLHttpRequest
# interface-xmlhttprequest

Compatibilité des navigateurs

Voir aussi