Le terme Ajax fait fureur dans le monde du logiciel. L’acronyme signifiait originellement Asynchronous JavaScript and
XML (XML et JavaScript asynchrones), mais il fait aujourd’hui référence à un large champ de techniques qui peuvent,
par exemple, ne pas inclure XML.
Au-delà du jargon technique, Ajax désigne l’architecture d’un logiciel conçu pour être utilisé avec n’importe quel navi-
gateur web, mais qui inclut une interface offrant la même impression de réactivité qu’une application de bureau. Cela
signifie, par exemple, qu’un composant de grille, tel qu’un tableur qui apparaît sur une page web, répond instanta-
nément à la manipulation des données par l’utilisateur, sans les délais temporels ou les perturbations visuelles causés
par la mise à jour ou la reconstruction de la page avec de nouvelles requêtes HTTP. Les services Gmail et Agenda de
Google, ainsi que le portail web français netvibes.com sont trois exemples d’applications Ajax typiques.
Ajax fonctionne en communiquant avec le logiciel médiateur et/ou la base de données tierce en utilisant un objet
JavaScript du côté du client. Celui-ci est appelé XMLHttpRequest (XHR). La page web est construite et programmée avec
des technologies standard et courantes, connues sous le nom de HTML/XHTML, feuilles de style en cascade (cascading
style sheets, ou CSS), JavaScript, et le modèle objet de document (Document Object Model) qui se cache derrière la
structure de chaque page web. Les données que la page échange avec son serveur tiers, telles qu’une base de données
de produits, peuvent être en pur texte, en XML, ou dans un format appelé notation objet issue de JavaScript (JavaScript
Object Notation, ou JSON).
Par exemple, l’utilisateur peut sélectionner un nom de produit dans une liste sur une page web. En réponse à cet évé-
nement, l’application utilise XHR afin d’envoyer une requête pour les données concernant ce produit. La page ne
change jamais, car l’application envoie la requête de manière asynchrone en arrière-plan. Le composant serveur, comme
un fichier PHP ou un servlet, reçoit la requête HTTP et retourne une réponse contenant les informations à propos du
produit, par exemple au format XML ou JSON. L’application traite cette dernière en utilisant la bibliothèque DOM de
JavaScript, ou en convertissant la valeur JSON en un objet côté client (voir plus loin dans ce Focus). L’utilisateur voit
la nouvelle information sur la page web, idéalement dans un délai très court.
Focus •
2