AJAX XMLHttpRequest

XMLHttpRequest 객체는 AJAX를 가능하게 합니다.

XMLHttpRequest

XMLHttpRequest 객체는 AJAX의 핵심입니다.

이 객체는 인터넷 익스플로러 5.5와 2000년 7월에 출시된 후로 사용 가능했지만, AJAX와 Web 2.0에 대해 논의하기 시작한 2005년 이전에는 이 객체가 충분히 인식되지 않았습니다.

XMLHttpRequest 객체 생성

다른 브라우저는 다른 방법으로 XMLHttpRequest 객체를 생성합니다. XMLHttpRequest 객체를 사용합니다.

인터넷 익스플로러는 ActiveXObject

다른 브라우저는 이름으로 XMLHttpRequest 의 JavaScript 내장 객체.

이 문제를 극복하기 위해 사용할 수 있는 이 간단한 코드를:

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

코드 설명:

  1. 먼저 XMLHttpRequest 객체로 사용할 것인지 생성합니다 XMLHttp 변수. 그 값을 null로 설정합니다.
  2. 그런 다음 테스트합니다 window.XMLHttpRequest 객체가 사용 가능한지 여부. 새 버전의 Firefox, Mozilla, Opera 및 Safari 브라우저에서는 이 객체가 사용 가능합니다.
  3. 사용 가능하면 그것을 사용하여 새로운 객체를 생성하십시오:XMLHttp=new XMLHttpRequest()
  4. 사용 가능하지 않으면 검사합니다 window.ActiveXObject 사용 가능한지 여부. 인터넷 익스플로러 버전 5.5 및 이상에서는 이 객체가 사용 가능합니다.
  5. 사용 가능하면 그것을 사용하여 새로운 객체를 생성하십시오:XMLHttp = new ActiveXObject()

개선된 예제

일부 프로그래머는 가장 최신이고 빠른 버전의 XMLHttpRequest 객체를 사용합니다.

이 예제는 마이크로소프트 최신 버전의 "Msxml2.XMLHTTP"를 로드하려고 시도합니다. 인터넷 익스플로러 6에서 사용할 수 있으며, 로드되지 않으면 "Microsoft.XMLHTTP"로 돌아갑니다. 인터넷 익스플로러 5.5 및 이후 버전에서 사용할 수 있습니다.

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;
}

코드 설명:

  1. 먼저 XMLHttpRequest 객체로 사용할 XMLHttp 변수. 그 값을 null로 설정합니다.
  2. 웹 표준 방식으로 객체를 생성하면 (Mozilla, Opera 및 Safari) :XMLHttp=new XMLHttpRequest()
  3. マイ크로소프트 방식으로 객체를 생성하면, Internet Explorer 6 이상에서 사용할 수 있습니다:XMLHttp=new ActiveXObject("Msxml2.XMLHTTP")
  4. 에러를 잡으면, 더 오래된 방법을 시도하세요 (Internet Explorer 5.5) :XMLHttp=new ActiveXObject("Microsoft.XMLHTTP")

XMLHttpRequest 객체에 대한 더 많은 정보

XMLHttpRequest에 대한 더 많은 내용을 읽고 싶다면, 우리의 사이트를 방문해 주세요 AJAX 강의