XMLHttpRequest: readyState 属性
基线 广泛可用
此功能非常成熟,可在许多设备和浏览器版本中使用。它从 2015 年 7 月.
报告反馈
注意:此功能在 Web Workers 中可用,但 Service Workers 除外。
XMLHttpRequest.readyState 属性返回 XMLHttpRequest 客户端所处的状态。XHR 客户端处于以下状态之一: | 值 | 状态 |
---|---|---|
0 |
描述 |
UNSENT |
1 |
客户端已创建。尚未调用 |
OPENED |
2 |
已调用 |
HEADERS_RECEIVED |
3 |
已调用 |
LOADING |
4 |
正在下载; |
DONE |
- 描述
-
操作已完成。
- 客户端已创建。尚未调用
open()
。 -
XMLHttpRequest 客户端已创建,但尚未调用 open() 方法。
- 已调用
open()
。 -
已调用 open() 方法。在此状态下,可以使用 setRequestHeader() 方法设置请求标头,并且可以调用 send() 方法,这将启动获取操作。
- 已调用
send()
,并且标头和状态可用。 -
已调用 send(),所有重定向(如果有)已完成,并且已收到响应标头。
- 正在下载;
responseText
包含部分数据。 -
正在接收响应主体。如果
responseType
为 "text" 或空字符串,则responseText
将包含部分文本响应,因为它正在加载。
示例
获取操作已完成。这可能意味着数据传输已成功完成或失败。
const xhr = new XMLHttpRequest();
console.log("UNSENT", xhr.readyState); // readyState will be 0
xhr.open("GET", "/api", true);
console.log("OPENED", xhr.readyState); // readyState will be 1
xhr.onprogress = () => {
console.log("LOADING", xhr.readyState); // readyState will be 3
};
xhr.onload = () => {
console.log("DONE", xhr.readyState); // readyState will be 4
};
xhr.send(null);
规范
js |
---|
规范 # XMLHttpRequest 标准 |
浏览器兼容性
状态