Please note, this is a STATIC archive of website from 03 Nov 2016, does not collect or store any user information, there is no "phishing" involved.

This feature is obsolete. Although it may still work in some browsers, its use is discouraged since it could be removed at any time. Try to avoid using it.

The BlobBuilder interface provides an easy way to construct Blob objects. Just create a BlobBuilder and append chunks of data to it by calling the append() method. When you're done building your blob, call getBlob() to retrieve a Blob containing the data you sent into the blob builder.

Note: The BlobBuilder interface has been deprecated in favor of the newly introduced Blob constructor.

Method overview

void append(in ArrayBuffer data);
void append(in Blob data);
void append(in String data, [optional] in String endings);
Blob getBlob([optional] in DOMString contentType);
File getFile(in DOMString name, [optional] in DOMString contentType);



Appends the contents of the specified JavaScript object to the Blob being built. If the value you specify isn't a Blob, ArrayBuffer, or String, the value is coerced to a string before being appended to the blob.

void append(
  in ArrayBuffer data

void append(
  in Blob data

void append(
  in String data,
  [optional] in String endings
The data to append to the Blob being constructed.
Specifies how strings containing \n are to be written out. This can be "transparent" (endings unchanged) or "native" (endings changed to match host OS filesystem convention). The default value is "transparent".


Returns the Blob object that has been constructed using the data passed through calls to append().

Blob getBlob(
  in DOMString contentType Optional
contentType Optional
The MIME type of the data to be returned in the Blob. This will be the value of the Blob object's type property.
Return value

A Blob object containing all of the data passed to any calls to append() made since the BlobBuilder was created. This also resets the BlobBuilder so that the next call to append() is starting a new, empty blob.


Returns a File object.

File getFile(
  in DOMString name,
  [optional] in DOMString contentType
The file name.
contentType Optional
The MIME type of the data to be returned in the File. This will be the value of the File object's type property.
Return value

A File object.

Browser compatibility

Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari
Basic support 8[1] Not supported[2] 10[3] Not supported Not supported[1]
getfile() Not supported Not supported Not supported Not supported Not supported
Feature Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Basic support 3[1] Not supported[2] Not supported Not supported Not supported[1]
getfile() Not supported Not supported Not supported Not supported Not supported

[1] WebKit implemented the API as WebKitBlobBuilder, though it has deprecated it now and has made its support configurable. Currently Safari disables the feature in Nightly, so it likely won't ship in a final version. On the other hand, Chrome, which has supported it since Chrome 8, still enables the feature. So Chrome might continue to support the feature. (See this WebKit changeset for details).

[2] Gecko implemented the API as MozBlobBuilder. Starting in Firefox 14, using MozBlobBuilder will show a warning message in the web console that the use of MozBlobBuilder is deprecated and suggests to use Blob constructor instead. In Gecko 18.0 this feature was removed.

[3] Trident implements the API as MSBlobBuilder.

See also

Document Tags and Contributors

 Contributors to this page: Sebastianz, teoli, kscarfone, evilpie, Sheppy, gert, FredB, myakura, fscholz, ebidel, Sephr
 Last updated by: Sebastianz,