This article needs a technical review. How you can help.

This is an experimental technology
Because this technology's specification has not stabilized, check the compatibility table for the proper prefixes to use in various browsers. Also note that the syntax and behavior of an experimental technology is subject to change in future versions of browsers as the spec changes.

The blob() method of the Body mixin takes a Response stream and reads it to completion. It returns a promise that resolves with a Blob.


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




A promise that resolves with a Blob.


In our fetch request example (run fetch request live), we create a new request using the Request.Request constructor, then use it to fetch a JPG. When the fetch is successful, we read a Blob out of the response using blob(), put it into an object URL using URL.createObjectURL, and then set that URL as the source of an <img> element to display the image.

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

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

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


Specification Status Comment
The definition of 'blob()' in that specification.
Living Standard  

Browser compatibility

Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari (WebKit)
Basic support 42 [1]
39 (39) [2] Not supported

29 [3]

Not supported
Feature Android Firefox Mobile (Gecko) Firefox OS (Gecko) IE Phone Opera Mobile Safari Mobile Chrome for Android
Basic support Not supported Not supported Not supported Not supported Not supported Not supported Not supported

[1] Behind a preference in version 41.

[2] Behind a preference starting with version 34.

[3] Behind a preference in version 28.

See also

Document Tags and Contributors

 Contributors to this page: omriBernstein, fscholz, chrisdavidmills, kscarfone
 Last updated by: omriBernstein,