响应:类型属性

基线 广泛可用

此功能已确立,并在许多设备和浏览器版本上运行良好。它自 2017 年 3 月.

type Response 接口的只读属性包含响应的类型。它可以是以下之一

  • basic:正常,同源响应,除“Set-Cookie”外所有标题均公开。
  • cors:响应来自有效的跨源请求。某些标题和正文 可以访问。
  • error:网络错误。没有可用的描述错误的有用信息。Response 的状态为 0,标题为空且不可变。这是从 Response.error() 获取的 Response 的类型。
  • opaque:对跨源资源的“no-cors”请求的响应。严格限制
  • opaqueredirect:Fetch 请求使用 redirect: "manual" 进行。Response 的状态为 0,标题为空,正文为 null,尾部为空。

注意:“error”Response 永远不会真正暴露给脚本:对 fetch() 的这种响应会拒绝 Promise。

表示响应类型的 ResponseType 字符串。

示例

在我们的 Fetch 响应示例 (请参阅 Fetch 响应实时)中,我们使用 Request() 构造函数创建一个新的 Request 对象,并将 JPG 路径传递给它。然后,我们使用 fetch() 获取此请求,使用 Response.blob 从响应中提取一个 Blob,使用 URL.createObjectURL() 从中创建一个对象 URL,并在 <img> 中显示此 URL。

请注意,我们在 fetch() 块的顶部将响应 type 记录到控制台。

js
const myImage = document.querySelector("img");

const myRequest = new Request("flowers.jpg");

fetch(myRequest)
  .then((response) => {
    console.log("response.type =", response.type); // response.type = 'basic'
    return response.blob();
  })
  .then((myBlob) => {
    const objectURL = URL.createObjectURL(myBlob);
    myImage.src = objectURL;
  });

规范

规范
Fetch 标准
# ref-for-dom-response-type①

浏览器兼容性

BCD 表仅在浏览器中加载

另请参阅