Request属性:mode
mode 只读属性
Request 接口的 mode 只读属性包含请求的模式(例如,cors,no-cors,same-origin,或 navigate)这是用来确定跨域请求是否导致有效的响应,并且其响应的哪些属性是可读的。
mode 只读属性语法
var myMode = request .mode ;
mode 只读属性值
一个
RequestMode
值。-
关联的模式,其可用值如下:
same-origin
- 如果使用此模式设置对另一个原点的请求,则结果只是一个错误。您可以使用它来确保始终对您的原点提出请求。no-cors
- 防止该方法成为除了HEAD
,GET
或者POST
之外的任何内容,并且标头不作为简单标题以外的任何内容。如果任何 ServiceWorkers拦截这些请求,它们可能不会添加或覆盖任何标题,除了那些简单的标题。另外,JavaScript可能无法访问Response
结果的任何属性。这确保ServiceWorkers不会影响Web的语义,并防止跨域泄漏数据而导致的安全和隐私问题。cors
- 允许跨源请求,例如访问第三方供应商提供的各种API。这些预计将遵守CORS协议。只有一些有限的头文件暴露在Response
中,但是正文是可读的。navigate
- 支持导航的模式。该navigate
值仅用于HTML导航。导航请求仅在文档之间导航时创建。
如果未定义,
cors
则假定为默认值。
示例
在下面的代码片段中,我们使用Request.Request()构造函数创建一个新请求(对于与脚本位于同一目录中的图像文件),然后将请求模式保存在变量中:
var myRequest = new Request('flowers.jpg');
var myMode = myRequest.mode; // returns "cors" by default
规范
规范 | 状态 | 注释 |
---|---|---|
Fetch
该规范中'mode'的定义。
|
Living Standard
|
初始定义 |
浏览器兼容性
电脑端 | 移动端 | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
Chrome
|
Edge
|
Firefox
|
Internet Explorer
|
Opera
|
Safari
|
Androidwebview | Chrome for Android
|
Edge Mobile |
Firefox
for
Android
|
Opera
for
Android
|
iOS Safari | |
基本支持 |
支持:42 | 支持 | 支持:39 | 不支持 | 支持:29 | 不支持
|
支持:49 | 支持:49 | 支持 | 不支持
|
不支持
|
不支持
|
navigate 模式 |
支持:49 | 支持 | 支持:46 | 不支持
|
? | 不支持
|
不支持 | 支持:49 | 支持 | 不支持
|
不支持
|
不支持 |