Request: mode 屬性
Baseline 廣泛可用 *
注意:此功能在 Web Workers 中可用。
mode 是 Request 介面的一個只讀屬性,包含請求的模式(例如 cors、no-cors、same-origin 或 navigate)。這用於確定跨域請求是否會產生有效響應,以及響應的哪些屬性是可讀的。
要構建具有特定模式的請求,請在 Request.Request() 建構函式中將所需值作為 RequestInit.mode 選項傳遞。
請注意,設定特定的模式,尤其是 no-cors,會對可用的請求方法和標頭施加限制,並阻止 JavaScript 訪問響應標頭或正文。有關更多詳細資訊,請參閱 RequestInit.mode 的文件。
值
以下值之一
same-origin-
禁止跨域請求。如果使用此模式向另一個域發出請求,則會導致錯誤。
no-cors-
停用跨域請求的 CORS。響應是不透明的,這意味著其標頭和正文對 JavaScript 不可用。
cors-
如果請求是跨域的,它將使用 跨域資源共享 (CORS) 機制。
-
用於支援導航的模式。
navigate值僅用於 HTML 導航。僅在文件之間導航時才建立導航請求。
預設模式
請求可以透過多種方式發起,請求的模式取決於其發起方式。
例如,當使用 Request() 建構函式建立 Request 物件時,該 Request 的 mode 屬性值設定為 cors。
然而,對於除 Request() 建構函式以外的其他方式建立的請求,通常使用 no-cors 作為模式;例如,對於從標記發起的嵌入式資源請求,除非存在 crossorigin 屬性,否則在大多數情況下,請求將使用 no-cors 模式發出——即,對於 <link> 或 <script> 元素(模組除外),或者 <img>、<audio>、<video>、<object>、<embed> 或 <iframe> 元素。
示例
在下面的程式碼片段中,我們使用 Request() 建構函式建立一個新請求(用於與指令碼在同一目錄下的影像檔案),然後將請求模式儲存在一個變數中。
const myRequest = new Request("flowers.jpg");
const myMode = myRequest.mode; // returns "cors" by default
規範
| 規範 |
|---|
| Fetch # ref-for-dom-request-mode② |
瀏覽器相容性
載入中…