--- title: Response.blob() slug: Web/API/Response/blob translation_of: Web/API/Response/blob tags: - API - Blob - Fetch - Method - Reference - Response browser-compat: api.Response.blob ---

{{APIRef("Fetch")}}

{{domxref("Response")}}  mixin的 blob()方法使用一个 {{domxref("Response")}} 流,并将其读取完成。它返回一个使用{{domxref("Blob")}}解决的promise。

句法

response.blob().then(function(myBlob) {
  // do something with myBlob
});

参数

None.

返回值

A promise that resolves with a {{domxref("Blob")}}.

例子

在我们 fetch request example (run fetch request live)中,我们使用Request.Request构造方法创建了一个新的request对象,然后使用它来获取一个JPG文件。当fetch成功的时候,我们使用blob()从response中读取一个Blob对象,并使用URL.createObjectURL 将它放入一个object URL ,然后把URL设置为img元素的src属性以显示这张图片。

 

var myImage = document.querySelector('img');

var myRequest = new Request('flowers.jpg');

fetch(myRequest)
.then(function(response) {
  return response.blob();
})
.then(function(myBlob) {
  var objectURL = URL.createObjectURL(myBlob);
  myImage.src = objectURL;
});

规范

规范 状态 说明
{{SpecName('Fetch','#dom-body-blob','blob()')}} {{Spec2('Fetch')}}  

浏览器兼容性

{{Compat("api.Response.blob")}}

另见