AJAX
Démarrer avec AJAX
AJAX (Asynchronous JavaScript + XML) n'est pas une technologie en soi, mais un terme désignant une « nouvelle » approche utilisant un ensemble de technologies existantes, dont : HTML ou XHTML, CSS, JavaScript, DOM, XML, XSLT, et surtout l'objet XMLHttpRequest
. Lorsque ces technologies sont combinées dans le modèle AJAX, les applications web sont capables de réaliser des mises à jour rapides et incrémentales de l'interface utilisateur sans devoir recharger la page entière dans le navigateur. Les applications fonctionnent plus rapidement et sont plus réactives aux actions de l'utilisatrice ou de l'utilisateur.
Bien que le X de AJAX signifie XML, c'est le format JSON
qui est le plus souvent utilisé aujourd'hui à la place de XML, du fait de sa proximité avec JavaScript et de sa légèreté par rapport à XML. Autrement dit, tant JSON que XML peuvent être utilisés comme format afin d'empaqueter des données en AJAX.
Documentation
- Démarrer
-
Cet article vous guide parmi les notions de base d'AJAX et fournit deux exemples pour mettre le pied à l'étrier.
- Utiliser l'API
XMLHttpRequest
-
L'API
XMLHttpRequest
est au cœur d'AJAX. Dans cet article, plusieurs techniques sont abordées :- Analyser et manipuler la réponse du serveur
- Surveiller l'avancement d'une requête
- Soumettre des formulaires et uploader des fichiers binaires en AJAX pur ou en utilisant des objets
FormData
- Utiliser AJAX avec les web workers
- API Fetch
-
L'API
Fetch
fournit une interface permettant de récupérer (fetch en anglais) des ressources. Elle ressemble à celle exposée parXMLHTTPRequest
, mais fournit des fonctionnalités plus flexibles et puissantes. - Évènements émis par le serveur
-
Généralement, c'est la page web qui initie une requête vers le serveur afin de recevoir de nouvelles données. Avec les évènements émis par le serveur, un serveur peut envoyer de nouvelles données à une page web à tout moment, via des messages. Ces derniers peuvent être traités par la page web comme des évènements contenant des données. Voir aussi : Utiliser les évènements émis par le serveur.
-
Cet article contient un exemple fonctionnel minimaliste d'un site web composé de trois pages et qui utilise AJAX.
- Envoyer et recevoir des données binaires (en-US)
-
La propriété
responseType
de l'objetXMLHttpRequest
peut être modifiée afin de changer le type de réponse attendu du serveur. Les valeurs possibles sont la chaîne vide (la valeur par défaut),arraybuffer
,blob
,document
,json
, ettext
. La propriétéresponse
contiendra le corps de l'entité selon la valeur deresponseType
, ce pourra donc être un objetArrayBuffer
,Blob
,Document
,JSON
, ou une chaîne de caractères. Cet article aborde quelques techniques d'entrée/sortie AJAX. - XML
-
Le langage XML (Extensible Markup Language) est un langage balisé qui permet de créer des formats pour des données particulières. Il s'agit d'un sous-ensemble simplifié de SGML, capable de décrire différentes sortes de données. Son principal objectif est de faciliter le partage de données entre différents systèmes, notamment ceux connectés par Internet.
- Analyser et sérialiser du XML (en-US)
-
Dans cet article, on voit comment analyser un document XML à partir d'une chaîne de caractères, d'un fichier ou via JavaScript. On voit également comment sérialiser des documents XML en chaînes de caractères, en arbres d'objets JavaScript ou en fichiers.
- XPath
-
XPath signifie XML Path, c'est-à-dire un langage pour décrire des chemins dans un document XML. Il s'agit d'une syntaxe non-XML qui permet de cibler différentes parties d'un document XML. On peut aussi l'utiliser pour tester certains nœuds d'un document afin de déterminer s'ils suivent un motif donné ou non.
- L'API
FileReader
-
L'API
FileReader
permet aux applications web de lire le contenu de fichiers (ou de tampons de données brutes) stockés sur l'ordinateur de la personne de façon asynchrone, en utilisant des objetsFile
ouBlob
pour représenter le fichier ou les données à lire. On peut obtenir des objetsFile
depuis un objetFileList
qui pourra être produit à partir d'un élément<input>
de sélection de fichiers, à partir d'un objetDataTransfer
d'une opération de glisser/déposer. - HTML et
XMLHttpRequest
(en-US) -
La spécification pour l'API
XMLHttpRequest
ajoute la capacité d'analyser du HTML àXMLHttpRequest
(initialement limité à l'analyse de XML). Cette fonctionnalité permet aux applications web d'obtenir une ressource HTML comme un DOM analysé en utilisantXMLHttpRequest
.
Outils
Voir aussi
- AJAX : une nouvelle approche pour les applications web (en anglais)
- Un article écrit par Jesse James Garrett en février 2005 qui introduit AJAX et les concepts associés.
- La spécification de
XMLHttpRequest
au sein du standard évolutif WHATWG