XMLHttpRequest 2级
2级中表单数据类型:FormData,使用FormData的话不必明确的在xhr上设置请求头。1
2var data = new FormData();
data.append('name', 'Jone')
超时设定
浏览器在指定时间内没有接收到响应,会触发timeout事件1
2
3
4
5
6xhr.open();
xhr.timeout = 1000; // 超时时间设置为1秒
xhr.ontimeout = function(){ // 超时处理
// do somthing
}
xhr.send();overrideMimeType()方法
用于重写XHR响应的MIME类型,返回的MIME决定了XHR对象如何处理它。1
2
3xhr.open();
xhr.overrideMimeType('text/xml');
xhr.send();
- 进度事件
loadstart:接收到响应数据的第一个字节时触发
progress:接收响应期间持续不断地触发
error:请求发生错误时触发
abort:因为调用abort()方法而终止连接时触发
load:接收到完整的响应数据时触发
loadend:通信完成或者触发error、abort或load事件后触发
触发顺序:1 -> 2(一个或多个) -> 3/4/5 -> 6
1 | // 一个进度指示器示例 |