1.提出者:jesse james garrett
2.ie中,xhr是通过activex对象实现的。涉及浏览器的兼容性写法。
3.使用
<1>open("请求方式","请求的url",“同步还是异步”)
<2>send("作为请求主体发送的数据") 如果不需要,则必须传入null。
<3>responsetext() 作为响应主体被返回的文本,还有一个responsexml
<4>status 响应的http状态
<5>statustext http状态的说明
4.readystate
只要readystate由一个值变为另外一个值,都会触发onreadystatechange事件处理程序。为了确保兼容性,应该在open之前调用onreadystatechange。有请求也就可以取消请求,使用xhr.abort()即可。
5.http的头信息
6.get请求
使用get请求经常会发生一个错误,就是差查询字符串的格式有问题。查询字符串中每个参数的名称和值都必须使用encodeuricomponent()进行编码,然后才能放到url的末尾。
blob对象:是一个二进制对象,如图片等
7.xmlhttprequest 2级
<1>formdata
为表单的序列化以及创建与表单格式相同的数据提供了便利。
<2>超时设定
请求超时执行回调:xhr.timeout=function(){}
<3>overridemimetype()
重写xhr响应的mime类型
<4>进度事件
<5>load事件
<6>progress事件
8.实例演示:
js:


结果:
请求与响应的信息:
改成post请求后:
2015-10-31 start
9.xhr中,post与get的简单对比
不会改变服务器状态,只获取数据(被称为“幂等行为”)的请求,使用get。经过get请求的数据会被缓存,多次请求的话,有助于提升性能。
由于浏览器对url的长度限制,使用较长url会被截断。使用post。
2015-10-31 end
转载:http://www.cnblogs.com/zqzjs/p/4912623.html