XMLHttpRequest AJAX

L'objet XMLHttpRequest rend AJAX possible.

XMLHttpRequest

L'objet XMLHttpRequest est la clé d'AJAX.

Cet objet était disponible dans Internet Explorer 5.5 et après la publication en juillet 2000, mais avant que les discussions sur AJAX et Web 2.0 ne commencent en 2005, cet objet n'a pas été suffisamment reconnu.

Créer un objet XMLHttpRequest

Les navigateurs utilisent des méthodes différentes pour créer XMLHttpRequest l'objet.

Internet Explorer utilise ActiveXObject.

Les autres navigateurs utilisent un nom XMLHttpRequest de l'objet intégré JavaScript.

Pour surmonter ce problème, utilisez ce code simple :

var XMLHttp=null
if (window.XMLHttpRequest)
  {
  XMLHttp=new XMLHttpRequest()
  }
else if (window.ActiveXObject)
  {
  XMLHttp=new ActiveXObject("Microsoft.XMLHTTP")
  }

Explication du code :

  1. Créez d'abord un objet comme XMLHttpRequest XMLHttp Variable. Mettez sa valeur à null.
  2. Ensuite, testez window.XMLHttpRequest Est-ce que l'objet est disponible. Dans les nouvelles versions de Firefox, Mozilla, Opera et Safari, cet objet est disponible.
  3. Si elle est disponible, utilisez-la pour créer un nouvel objet :XMLHttp=new XMLHttpRequest()
  4. Si elle n'est pas disponible, détectez window.ActiveXObject Est-elle disponible. Dans Internet Explorer version 5.5 et versions supérieures, cet objet est disponible.
  5. Si elle est disponible, utilisez-la pour créer un nouvel objet :XMLHttp=new ActiveXObject()

Exemple amélioré

Certains programmeurs préfèrent utiliser la version la plus récente et la plus rapide de l'objet XMLHttpRequest.

L'exemple suivant tente de charger la dernière version de Microsoft "Msxml2.XMLHTTP", disponible dans Internet Explorer 6, et si elle ne peut pas être chargée, elle revient à "Microsoft.XMLHTTP", disponible dans Internet Explorer 5.5 et versions ultérieures.

function GetXmlHttpObject()
{
var xmlHttp=null;
try
 {
 // Firefox, Opera 8.0+, Safari
 xmlHttp=new XMLHttpRequest();
 }
catch (e)
 {
 // Internet Explorer
 try
  {
  xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
  }
 catch (e)
  {
  xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
 }
return xmlHttp;
}

Explication du code :

  1. Créez d'abord XMLHttp Variable. Mettez sa valeur à null.
  2. Création d'objets selon les normes web (Mozilla, Opera et Safari) :XMLHttp=new XMLHttpRequest()
  3. Création d'objets selon la manière de Microsoft, disponible dans Internet Explorer 6 et versions supérieures :XMLHttp=new ActiveXObject("Msxml2.XMLHTTP")
  4. Si vous capturez une erreur, essayez une méthode plus ancienne (Internet Explorer 5.5) :XMLHttp=new ActiveXObject("Microsoft.XMLHTTP")

Plus d'informations sur l'objet XMLHttpRequest

Si vous souhaitez lire plus sur XMLHttpRequest, veuillez visiter notre Tutoriel AJAX.