Ajax

2017-07-26  本文已影响0人  徐徐安

Ajax的技术核心是XMLHttpRequest

第一步:var xhr=new XMLHttpRequest();

第二步:xhr.open(),它接受三个参数:要发送的请求类型("get"、“post”)、请求的URL和表示是否异步发送请求的布尔值,如xhr.open("get","example.php",false);  其中URL是相对于执行代码的当前页面(当然也可以使用绝对路径);二调用open()的方法并不会真正发送请求,而只是启动一个请求以备发送;false代表同步请求

第三步:xhr.send(null),send()方法可以接收一个参数,即作为请求主体发送的数据,如果不需要通过请求主体发送数据,则必须传入null

大多数是发送异步请求,才能让javascript继续执行而不必等待响应,调用open之前制定onreadystatechange事件处理程序才能确保跨浏览器兼容性。

例如:

var xhr=new XMLHttpRequest();

xhr.onreadystatechange=function(){

if(xhr.readyState==4){

if((xhr.status>=200 && xhr.status<300 ) || xhr.status==304){

alert(xhr.responseText);

}else{

alert("Request was unsucessful:"+xhr.status);

}}};

xhr.open(“get”,“example.txt”,true);

xhr.send(null);

其中readyState取值(0-4)0:未初始化,尚未调用open()方法。1:启动,已经调用open()方法,但尚未调用send()方法;2:发送 已经调用send()方法,但尚未收到响应。3:接收,已经接收到部分响应数据。4:完成已经接收到全部响应数据,而且已经可以在客户端使用了。

另外接收到响应之前可以调用abort()方法取消异步请求。xhr.abort();调用之后xhr会停止触发事件对象,而且也不再允许访问任何和响应有关的属性。

http头部信息

cookie :当前页面页面设置的任何cookie

上一篇下一篇

猜你喜欢

热点阅读