AJAX-XMLHttpRequest
XMLHttpRequest 객체는 AJAX의 핵심입니다. 2000 년 7 월 Internet Explorer 5.5가 출시 된 이후로 사용 가능했지만 2005 년 AJAX 및 Web 2.0이 대중화 될 때까지 완전히 발견되지 않았습니다.
XMLHttpRequest (XHR)는 JavaScript, JScript, VBScript 및 기타 웹 브라우저 스크립팅 언어에서 HTTP를 사용하여 웹 서버와 XML 데이터를 전송하고 조작하는 데 사용할 수있는 API로, 웹 페이지의 클라이언트 측과 서버 측.
XMLHttpRequest 호출에서 반환 된 데이터는 종종 백엔드 데이터베이스에서 제공됩니다. XML 외에도 XMLHttpRequest를 사용하여 JSON 또는 일반 텍스트와 같은 다른 형식의 데이터를 가져올 수 있습니다.
XMLHttpRequest 객체를 만드는 방법에 대한 몇 가지 예를 이미 보았습니다.
다음은 익숙해 져야하는 몇 가지 메서드와 속성입니다.
XMLHttpRequest 메서드
abort()
현재 요청을 취소합니다.
getAllResponseHeaders()
전체 HTTP 헤더 집합을 문자열로 반환합니다.
getResponseHeader( headerName )
지정된 HTTP 헤더의 값을 반환합니다.
open( method, URL )
open( method, URL, async )
open( method, URL, async, userName )
open( method, URL, async, userName, password )
요청의 메서드, URL 및 기타 선택적 속성을 지정합니다.
메소드 매개 변수는 "GET", "POST"또는 "HEAD"값을 가질 수 있습니다. "PUT"및 "DELETE"(주로 REST 애플리케이션에서 사용됨)와 같은 다른 HTTP 메소드가 가능할 수 있습니다.
"async"매개 변수는 요청을 비동기 적으로 처리해야하는지 여부를 지정합니다. "true"는 스크립트 처리가 응답을 기다리지 않고 send () 메소드 이후에 수행됨을 의미하고 "false"는 스크립트 처리를 계속하기 전에 스크립트가 응답을 기다림을 의미합니다.
send( content )
요청을 보냅니다.
setRequestHeader( label, value )
보낼 HTTP 헤더에 레이블 / 값 쌍을 추가합니다.
XMLHttpRequest 속성
onreadystatechange
모든 상태 변경시 발생하는 이벤트에 대한 이벤트 처리기입니다.
readyState
readyState 속성은 XMLHttpRequest 객체의 현재 상태를 정의합니다.
다음 표는 readyState 속성에 대해 가능한 값 목록을 제공합니다-
상태 | 기술 |
---|---|
0 | 요청이 초기화되지 않았습니다. |
1 | 요청이 설정되었습니다. |
2 | 요청이 전송되었습니다. |
삼 | 요청이 처리 중입니다. |
4 | 요청이 완료되었습니다. |
readyState = 0 XMLHttpRequest 객체를 만든 후 open () 메서드를 호출하기 전입니다.
readyState = 1 open () 메서드를 호출 한 후 send ()를 호출하기 전에.
readyState = 2 send ()를 호출 한 후.
readyState = 3 브라우저가 서버와 통신을 설정 한 후 서버가 응답을 완료하기 전입니다.
readyState = 4 요청이 완료되고 응답 데이터가 서버에서 완전히 수신 된 후.
responseText
응답을 문자열로 반환합니다.
responseXML
응답을 XML로 반환합니다. 이 속성은 W3C DOM 노드 트리 메서드 및 속성을 사용하여 검사하고 구문 분석 할 수있는 XML 문서 개체를 반환합니다.
status
상태를 숫자로 반환합니다 (예 : "찾을 수 없음"의 경우 404, "확인"의 경우 200).
statusText
상태를 문자열로 반환합니다 (예 : "Not Found"또는 "OK").