Ajax原理及应用三(发送请求和处理响应的一般步骤)
一、创建了XMLHttpRequest对象后,便可以通过其属性和方法发送和处理HTTP请求,发送请求和处理响应的一般步骤如下:
- 1、调用open()方法设置请求方式、目标URL,同步或者异步方式以及可能需要的授权信息。
- 2、根据需要,调用setRequestHeader(),设置指定的HTTP头,发送GET请求时,不需要设置指定的请求头,而发送post请求时,需要设置“content-type”头设置为“application/x-www-form-urlencoded",否则服务器端脚本将无法解析发送到服务器端的数据内容。
- 3、对于异步请求,如果需要对服务器获取和操作响应结果,则在发送请求之前,需要为onreadystatechange属性指定处理方法。该函数用户对服务器响应进行处理。
- 4、调用send()方法发送请求,对于GET请求,send()方法参数为null,对于post请求,则send()方法参数为要发送的内容。
- 5、在为onreadystatechage事件句柄指定函数时,通过判断readState是否到达4,判断响应是否已全部接收到。当readyState为4时,通过getResponseHeader()或者getAllRequestHeader()方法获取响应头信息,通过responseText或者responseXML属性获取响应内容。
- 6、对响应内容进行相应操作。
二、创建ajax实例,代码如下:
- if(typeof(XMLHttpRequest)=='undefined'?&&?window.ActiveXObject) ??
- ????{??? ??
-
??????function?XMLHttpRequest(){??? ??
-
????????var?xml_http_arr=["MSXML2.XMLHTTP","Microsoft.XMLHTTP"];??? ??
-
????????var?xml_request;??? ??
-
????????for(var?i=0;i<xml_http_arr.length;i++){??? ??
-
???????????if(xml_request?=?new?ActiveXObject(xml_http_arr[i]))??? ??
-
????????????break;??? ??
- ?????????}?????? ??
-
???????return?xml_request;??? ??
- ???????}??? ??
- ??}??? ??
- ??
-
var?xml_http_request=new?XMLHttpRequest();? ??
-
??
-
function?login(){ ??
- ?????? ??
-
???var?url="${pageContext.request.contextPath}/cbice/webuserAction.do?method=login";???? ??
-
????xml_http_request.open("post",url,true
免责声明: 本文仅代表作者个人观点,与爱易网无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。