Outils pour utilisateurs

Outils du site


bloc2:prog:web:ajax

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
bloc2:prog:web:ajax [2025/04/28 09:51] – [Principe de fonctionnement] clerge.rbloc2:prog:web:ajax [2025/04/28 14:11] (Version actuelle) – [Définition et composants] clerge.r
Ligne 8: Ligne 8:
 Ajax est composé d'un Assemblage de produits et techniques qui sont : Ajax est composé d'un Assemblage de produits et techniques qui sont :
  
- - HTML + CSS : pour la structure et la présentation de la page. +    HTML + CSS : pour la structure et la présentation de la page. 
- +   JavaScript : pour les traitements côté client. 
- - JavaScript : pour les traitements côté client. +   XML (de plus en plus remplacé par JSON) : pour échanger des données entre le client et le serveur. 
- +   XMLHttpRequest (XHR) : pour envoyer et recevoir des données en mode asynchrone (middleware entre le client et le serveur).  
- - XML (de plus en plus remplacé par JSON) : pour échanger des données entre le client et le serveur. +
- +
- - XMLHttpRequest (XHR) : pour envoyer et recevoir des données en mode asynchrone (middleware entre le client et le serveur).+
  
 Ajax introduit une distribution des traitements entre client et serveur, participant au mouvement du Web 2.0 et favorisant l’émergence d’applications web plus dynamiques. Ajax introduit une distribution des traitements entre client et serveur, participant au mouvement du Web 2.0 et favorisant l’émergence d’applications web plus dynamiques.
Ligne 42: Ligne 39:
 Un schéma de principe illustre cette chaîne : Interaction utilisateur → Envoi d'une requête XHR → Réponse du serveur → Mise à jour dynamique de la page. Un schéma de principe illustre cette chaîne : Interaction utilisateur → Envoi d'une requête XHR → Réponse du serveur → Mise à jour dynamique de la page.
  
-//Requête en mode asynchrone associée à fonction de rappel//+----------------------------------------------------------------------
  
 En Ajax, les requêtes sont asynchrones, c'est-à-dire qu'elles ne bloquent pas le reste de l'application pendant leur exécution. En Ajax, les requêtes sont asynchrones, c'est-à-dire qu'elles ne bloquent pas le reste de l'application pendant leur exécution.
Ligne 51: Ligne 48:
 Cette approche permet d'améliorer la fluidité de l'expérience utilisateur et d'éviter les temps d'attente perceptibles. Cette approche permet d'améliorer la fluidité de l'expérience utilisateur et d'éviter les temps d'attente perceptibles.
  
-Exemple simple : +Exemple simple en JavaScript
- +<code javascript>
-<script>+
     var xhr = new XMLHttpRequest();     var xhr = new XMLHttpRequest();
     xhr.open('GET', 'data.json', true);     xhr.open('GET', 'data.json', true);
Ligne 62: Ligne 58:
     };     };
     xhr.send();     xhr.send();
-</script>+</code>
 ===== Avantages ===== ===== Avantages =====
 +
 +Les principaux avantages d'Ajax sont :
 +
 + - Réactivité accrue des applications web.
 +
 + - Réduction du trafic réseau, car seules les données nécessaires sont échangées.
 +
 + - Soulagement des serveurs, certains traitements étant déportés vers le client.
 +
 + - Faible consommation de ressources côté client pour des interactions rapides et légères.
 ===== Inconvénients ===== ===== Inconvénients =====
 +Malgré ses avantages, Ajax présente aussi des limites :
 +
 + - Nécessité d'activer JavaScript côté client pour son fonctionnement.
 +
 + - Compatibilité navigateur : tester sur différents navigateurs est indispensable.
 +
 + - Problèmes de référencement : les moteurs de recherche peuvent avoir du mal à indexer des contenus chargés dynamiquement.
 +
 + - Risques de sécurité, notamment d'injection de code via les requêtes.
 +
 + - Temps de chargement initial parfois plus long dû aux bibliothèques JavaScript nécessaires.
 +
 + - Détournement possible de l'utilisation de XmlHTTPRequest pour des usages malveillants.
 +
  
bloc2/prog/web/ajax.1745826699.txt.gz · Dernière modification : 2025/04/28 09:51 de clerge.r