> 웹 프론트엔드 > JS 튜토리얼 > xmlHttp 객체 메소드 및 속성에 대한 이해_기본지식

xmlHttp 객체 메소드 및 속성에 대한 이해_기본지식

WBOY
풀어 주다: 2016-05-16 18:11:51
원래의
965명이 탐색했습니다.
1  客户端可以通过xmlHttp对象(MSXML2.XMLHTTP.3.0)向http服务器发送请求并使用文档对象模型(DOM)处理回应。

1.1 我的理解:

  1. 用户的每次操作,都会有数据产生。
  2. 通过DOM或者JS编写对数据进行封装,或者浏览器自身对http协议的一些数据进行封装。
  3. 通过xmlHttp对象的一些方法,传入数据参数,向http服务器发送请求。
  4. 返回结果通过DOM进行处理。

2  xmlHttp对象的成员。

2.1 属性

  1. onreadystatechange:readyState属性值发生改变时,触发的事件处理句柄。

例子:xmlHttp.onreadystatechange = functionHandler;

   function functionHandler() {

if(xmlHttp.readyState == 4) {

alert("readyState状态为4时,弹出此窗口!!!");

}

  }

//句柄只有方法名称,没有这对“()”括号。赋值时要注意理解。

  1. readyState:这个属性表示状态;总共有五种状态:

0 (未初始化)

对象已建立,但是尚未初始化(尚未调用open方法)

1 (初始化)

对象已建立,尚未调用send方法

2 (发送数据)

send方法已调用,但是当前的状态及http头未知

3 (数据传送中)

已接收部分数据,因为响应及http头不全,这时通过responseBody和responseText获取部分数据会出现错误,

4 (完成)

数据接收完毕,此时可以通过通过responseBody和responseText获取完整的回应数据

// xmlHttp는 고정된 방식으로 작성되므로 각 단계마다 상태 변경이 수반되므로 이벤트는 핸들러가 항상 모니터링되면 해당 로직을 실행합니다.

코드 실행 순서:

var xmlHttpReq = new ActiveXObject("MSXML2.XMLHTTP.3.0");

xmlHttpReq.open("GET", "http://localhost/test.xml", false);

xmlHttpReq.send();

경고(xmlHttpReq.responseText);

2.2 방법

  1. open(메서드, URL, Syn, 사용자, 비밀번호)

xmlHttp 개체를 생성하면 실제로는 http 요청이 생성됩니다.

이 메소드는 요청 메소드를 지정합니다(GET/POST/PUT/PROPFIND), URL, 비동기(기본값은 true), 확인 정보입니다.

에서 비동기 방식 (true)을 채택하면 상태가 변경될 때 onreadystatechange 속성에 지정된 콜백 함수가 호출됩니다.

  1. 보내기();

이 메소드의 동기 또는 비동기 모드는 SynSyn 매개변수에 따라 달라집니다. > = = false, Syn == 인 경우 이 메서드는 반환하기 전에 요청이 완료되거나 시간 초과될 때까지 기다립니다. t참, 이 메서드는 즉시 반환됩니다.

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿