재인쇄할 소스를 명시해 주세요: ajax의 xmlHttpRequest 객체
XMLHttpRequest 객체는 ajax의 핵심입니다. 여기에는 스크립트 처리를 용이하게 하고 http 요청 응답을 제어하는 많은 속성, 메서드 및 이벤트가 있습니다. 개발을 위해 네이티브 javascript를 사용해 왔다면 ajax를 사용할 때 이 객체를 잘 알아야 하고, jquery와 같은 캡슐화 프레임워크를 사용한다면 이에 대한 이해가 깊어지면 Ajax에 대한 이해도 깊어질 것입니다.
다음은 일부 속성에 대한 소개입니다.
1.readState 속성: xmlHttpRequest 객체가 생성될 때 이 속성은 핵심 객체가 무엇인지 알려줍니다. 마지막으로, 어떤 상태이고 액세스 또는 처리가 가능한지 여부는 각각 0, 1, 2, 3, 4일 수 있습니다. 객체가 생성되었지만 초기화되지 않았습니다(예: int). i;), 1: 객체의 open() 메소드를 호출하고 요청을 보낼 준비를 합니다. 2: 요청을 위해 send() 메소드가 호출되었지만 응답이 수신되지 않았습니다. 응답을 완료하고 httpResponse 응답 수신을 완료했습니다.
2.responseText 속성: 클라이언트가 받은 http 응답의 텍스트 내용을 포함합니다. readState가 0, 1, 2이면 빈 문자열이고, 3이면 부분적으로 수신된 문자열입니다.
3.responseXml 속성: ReadyState=4이고 응답 헤더의 Content-Type이 XML(text/xml 또는 application/xml)로 지정된 경우에만 이 속성의 값은 xml 문서입니다. , 반환된 XML의 형식이 잘못되었거나 응답이 완료되지 않은 경우 이 속성의 값도 null이 됩니다. xml 문서를 파싱한 후 xmlHttpRequest 객체의 속성을 설명하는 데 사용됩니다.
4.status 속성: http 상태 코드로 표시됩니다. 이 속성은 ReadyState=3 또는 4인 경우에만 액세스할 수 있습니다. 그렇지 않으면 이 속성을 얻을 때 예외가 발생합니다.
5.statusText 속성: http 상태 코드가 표시된 텍스트입니다. 이 속성은 ReadyState=3 또는 4인 경우에만 액세스할 수 있습니다. 그렇지 않으면 이 속성을 얻을 때 예외가 발생합니다.
다음은 이벤트 소개입니다. onreadystatechange 이벤트
ReadyState의 속성이 변경될 때마다 이 이벤트가 발생하는데, 이는 ajax The 요청에서 가장 자주 사용되는 핵심 이벤트입니다.
다음은 일부 메소드에 대한 소개입니다.
1.open(): xmlHttpRequest 객체는 open(method, uri, async, username을 호출하여 처리됩니다. , 비밀번호) 초기화 작업입니다. 이 메소드를 호출한 후 전송 가능한 객체(send() 메소드)를 반환한다. method는 필수 매개변수이며 http 사양에 따라 GET, POST, PUT, DELETE 및 HEAD일 수 있습니다. uri는 xmlHttpRequest 객체가 요청한 서버 주소를 지정하는 데 사용되며 이는 상대 경로 또는 절대 경로일 수 있습니다. 결국 절대 경로로 확인됩니다. async 비동기인지 여부를 지정하는 데 사용되며, 서버가 액세스 사용자를 확인해야 하는 경우에는 사용자 이름과 비밀번호의 두 매개변수를 사용할 수 있습니다.
2.send(): send() 메소드는 open() 메소드의 매개변수가 전송되도록 요청합니다. 즉, open() 호출 이후에만 호출할 수 있습니다. readState=1() 이후, send()가 응답 정보인 ReadyState=2를 수신하기 전, 일단 send()가 응답 정보인 ReadyState=3을 수신한 후, 최종 승인이 완료될 때까지(ReadyState=4) 호출됩니다. send 메소드는 변수 유형 데이터를 포함할 수 있는 선택적 매개변수를 사용합니다. 대형용. 대부분의 다른 데이터 유형의 경우 send()를 호출하기 전에 setRequestHeader()를 사용하여 Content-Type을 설정해야 합니다. 일반적으로 이 메소드를 명시적으로 호출하려면 send(null)를 사용합니다. send(data)의 데이터 유형이 DOMString인 경우 데이터는 utf-8로 편집되며,
data.xmlEncoding 이 데이터를 Rowize합니다. 3.about(): httpRequest 요청의 전송 또는 수신을 일시 중지하고 xmlHttpRequest 객체를 초기화된 상태로 설정할 수 있습니다. 4.setRequestHeader(): 요청의 헤더 정보를 설정합니다. ReadyState=1인 경우 open()을 호출한 후 호출할 수 있습니다. 그렇지 않으면 예외가 발생합니다. .5.setResponseHeader(): 응답 헤더 정보를 검색하는 데 사용됩니다. ReadyState=4 또는 3인 경우에만 호출할 수 있습니다. 그렇지 않으면 빈 문자열을 가져옵니다. 또한 모든 httpResponse 헤더 정보를 얻기 위해 getAllResponseHeader()를 사용합니다. 위 내용은 ajax의 xmlHttpRequest 객체 내용입니다. 더 많은 관련 내용은 PHP 중국어 홈페이지(www.php.cn)를 참고해주세요!