XMLHttpRequest:abort() 方法

Baseline 已广泛支持

此特性已相当成熟,可在许多设备和浏览器版本上使用。自 ⁨2015 年 7 月⁩以来,各浏览器均已提供此特性。

注意:此功能在 Web Workers 中可用,但 Service Workers 除外。

XMLHttpRequest.abort() 方法会中止已发送的请求。当请求被中止时,其 readyState 会被更改为 XMLHttpRequest.UNSENT (0),并且请求的 status 代码会被设置为 0。

如果请求仍在进行中(其 readyState 不是 XMLHttpRequest.DONEXMLHttpRequest.UNSENT),则会按顺序分派 readystatechange 事件、abort 事件和 loadend 事件。对于同步请求,不会分派任何事件,而是会抛出错误。

语法

js
abort()

参数

无。

返回值

无(undefined)。

示例

此示例开始加载 MDN 主页的内容,然后由于某种条件,通过调用 abort() 来中止传输。

js
const xhr = new XMLHttpRequest();
const method = "GET";
const url = "https://mdn.org.cn/";
xhr.open(method, url, true);

xhr.send();

if (OH_NOES_WE_NEED_TO_CANCEL_RIGHT_NOW_OR_ELSE) {
  xhr.abort();
}

规范

规范
XMLHttpRequest
# the-abort()-method

浏览器兼容性

另见