XMLHttpRequest: open() 方法

Baseline 已广泛支持

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

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

XMLHttpRequest 方法 open() 初始化一个新创建的请求,或者重新初始化一个已有的请求。

注意: 对一个已激活的请求(即已经调用过 open() 的请求)调用此方法,等同于调用 abort()

语法

js
open(method, url)
open(method, url, async)
open(method, url, async, user)
open(method, url, async, user, password)

参数

method(方法)

要使用的 HTTP 请求方法,例如 "GET""POST""PUT""DELETE" 等。对于非 HTTP(S) URL,此参数将被忽略。

url

一个字符串或任何其他具有 字符串转换器的对象 — 包括 URL 对象 — 该对象提供要将请求发送到的资源的 URL。

async 可选

一个可选的布尔值参数,默认为 true,指示操作是否以异步方式执行。如果此值为 false,则 send() 方法在收到响应之前不会返回。如果为 true,则使用事件监听器提供事务完成的通知。如果 multipart 属性为 true,此值必须true,否则将抛出异常。

注意: 主线程上的同步请求很容易干扰用户体验,应避免使用;事实上,许多浏览器已经完全弃用了主线程上同步 XHR 的支持。同步请求在 Worker 中是允许的。

user 可选

用于身份验证的可选用户名;默认值为 null

password 可选

用于身份验证的可选密码;默认值为 null

返回值

无(undefined)。

规范

规范
XMLHttpRequest
# the-open()-method

浏览器兼容性

另见