Body

The Body mixin (en-US) of the Fetch API represents the body of the response/request, allowing you to declare what its content type is and how it should be handled.

Body is implemented by both Request (en-US) and Response. This provides these objects with an associated body (a stream), a used flag (initially unset), and a MIME type (initially the empty byte sequence).

Properties

Body.body (en-US) Read only
A simple getter used to expose a ReadableStream (en-US) of the body contents.
Body.bodyUsed (en-US) Read only
A Boolean (en-US) that indicates whether the body has been read.

Methods

Body.arrayBuffer() (en-US)
Takes a Response stream and reads it to completion. It returns a promise that resolves with an ArrayBuffer (en-US).
Body.blob() (en-US)
Takes a Response stream and reads it to completion. It returns a promise that resolves with a Blob.
Body.formData() (en-US)
Takes a Response stream and reads it to completion. It returns a promise that resolves with a FormData object.
Body.json()
Takes a Response stream and reads it to completion. It returns a promise that resolves with the result of parsing the body text as JSON.
Body.text() (en-US)
Takes a Response stream and reads it to completion. It returns a promise that resolves with a USVString (en-US) (text). The response is always decoded using UTF-8.

Examples

The example below uses a simple fetch call to grab an image and display it in an <img> (en-US) tag. You'll notice that since we are requesting an image, we need to run Body.blob() (en-US) (Response implements body) to give the response its correct MIME type.

HTML Content

<img class="my-image" src="https://wikipedia.org/static/images/project-logos/frwiki-1.5x.png">

JS Content

var myImage = document.querySelector('.my-image');
fetch('https://upload.wikimedia.org/wikipedia/commons/7/77/Delete_key1.jpg')
	.then(res => res.blob())
	.then(res => {
		var objectURL = URL.createObjectURL(res);
		myImage.src = objectURL;
});

Specifications

Specification Status Comment
Fetch
The definition of 'Body' in that specification.
Living Standard  

Browser compatibility

BCD tables only load in the browser

See also