值
一個字串,可以是以下任何值
basic-
這適用於以下任何情況
在此型別下,所有響應頭都暴露,除了
Set-Cookie。 cors-
請求是跨域的,並且已使用 CORS 成功處理。在此型別下,只暴露 CORS 安全列表響應頭。
error-
發生了網路錯誤。
status屬性設定為0,body為null,頭部為空且不可變。這是由
Response.error()返回的響應型別。呼叫fetch()不會返回此型別的響應,因為如果發生網路錯誤,Promise 會被拒絕。 opaque-
對模式設定為
no-cors的跨域請求的響應。status屬性設定為0,body為null,頭部為空且不可變。 opaqueredirect-
對重定向選項設定為
manual的請求的響應,並且該請求已被伺服器重定向。status屬性設定為0,body為null,頭部為空且不可變。
示例
一個 basic 響應
以下同源請求將返回一個 basic 響應
js
const response = await fetch("flowers.jpg");
console.log(response.type); // "basic"
一個 CORS 響應
假設 https://example.org 不是請求者所在的域,並且伺服器響應了適當的 CORS 頭部,此請求將返回一個 cors 響應
js
const response = await fetch("https://example.org/flowers.jpg");
console.log(response.type); // "cors"
一個 opaque 響應
以下請求是使用 no-cors 選項發起的,因此它返回一個 opaque 響應
js
const response = await fetch("https://example.org/flowers.jpg", {
mode: "no-cors",
});
console.log(response.type); // "opaque"
console.log(response.body); // null
console.log(response.status); // 0
一個 error 響應
以下程式碼使用 Response.error() 建立了一個 error 響應
js
const response = Response.error();
console.log(response.type); // "error"
console.log(response.body); // null
console.log(response.status); // 0
規範
| 規範 |
|---|
| Fetch # dom-response-type |
瀏覽器相容性
載入中…