Ajax 02

Ajax를 구형하기 위한 세가지 과정

  • · XMLHttpRequest 객체를 생성
  • · 콜백 함수(서버 응답 시의 처리 내용)를 등록
  • · 서버에 비동기 통신을 개시

XMLHttpRequest 객체를 생성한다.


XMLHttpRequest 객체를 생성하는 방법(브라우저에 따른 차이)

XMLHttpRequest 객체를 생성하는 방법(브라우저에 따른 차이)
브라우저 구분
Internet Explorer 5.5 이전 var req = new ActiveXObject('MicrosoftXMLHTTP');
Internet Explorer 6.0 var req = new ActiveXObject('Msxml2.XMLHTTP');
Internet Explorer 7.0 이후/그 이외의 브라우저 var req = new XMLHttpRequest();
							function getXHR () {
								var req;
								try {
									req = new XMLHttpRequest();
								}
								catch (e) {
									try {
										req = new ActiveXObject('Msxml2.XMLHTTP');
									}
									catch (e) {
										req = new ActiveXObject('Microsoft.XMLHTTP');
									}
								}
								return req;
							} // end of getXHR();
						

XMLHttpRequest 객체로 이용 가능한 맴버(*는 읽기 전용, **은 send 메소드의 성공 시에만 유효)

◎ 프로퍼티

XMLHttpRequest 객체로 이용 가능한 맴버- 프로퍼티
멤버 개요
onreadystatechange 통신 상태가 변화된 타이밍에 호출되는 이벤트 핸들러
*readyState HTTP 통신 상태를 취득
*status HTTP Status 코드를 취득
*statusText HTTP Status의 상세 메시지를 취득
*responseText 응답 본체를 plaintext로 취득
*responseXML 응답 본체를 XML(XMLDocument 객체)로 취득

◎ 메소드

XMLHttpRequest 객체로 이용 가능한 맴버- 메소드
멤버 개요
abort() 현재의 비동기 통신을 중단
**getAllResponseHeaders() 수신한 모든 HTTP 응답 헤더를 취득
**getResponseHeader(header) 지정한 HTTP 응답 헤더를 취득
open() HTTP Request를 초기화(구문의 상세 설명은 나중에)
setRequestHeader(header, value) 리퀘스트 시에 송신하는 헤더를 추가
send(body) HTTP 리퀘스트를 송신(인수 body는 리퀘스트 본체)