--- title: Request.mode slug: Web/API/Request/mode tags: - API - Fetch - 参考 - 属性 - 请求 translation_of: Web/API/Request/mode ---
{{APIRef("Fetch")}}

{{domxref("Request")}} 接口的 mode 只读属性包含请求的模式(例如:cors 、 no-cors 、 cors-with-forced-preflight 、 same-origin 或 navigate 。)这用于确定跨域请求是否能得到有效的响应,以及响应的哪些属性是可读的。

语法

var myMode = request.mode;

属性值

一个 RequestMode 值。

默认模式

可以以多种方式发起请求,并且请求的模式取决于发起请求的特定方式。

例如,当一个 Request 对象以 {{domxref("Request.Request")}} 方式创建,该Request 的 mode 的值为 cors 。

然而,除了以 {{domxref("Request.Request")}} 创建的请求,模式通常为 no-cors 。例如,对与嵌入资源发起的请求,除非存在 crossorigin 属性,即对于 {{HTMLElement("link")}} 、 {{HTMLElement("script")}} (除了和模块一起使用之外)、 {{HTMLElement("img")}}、 {{HTMLElement("audio")}}、 {{HTMLElement("video")}}、 {{HTMLElement("object")}}、 {{HTMLElement("embed")}}还有 {{HTMLElement("iframe")}} 元素,在大多数情况下是使用 no-cors 模式

示例

在下面代码段中,我们使用 {{domxref("Request.Request()")}} 创建请求(请求与脚本位于同一目录中的图像文件),然后将请求模式保存在一个变量中:

In the following snippet, we create a new request using theconstructor (for an image file in the same directory as the script), then save the request mode in a variable:

var myRequest = new Request('flowers.jpg');
var myMode = myRequest.mode; // returns "cors" by default

规范

规范 状态 备注
{{SpecName('Fetch','#dom-request-mode', 'mode')}} {{Spec2('Fetch')}} Initial definition

浏览器兼容性

{{Compat("api.Request.mode")}}

参见