Body
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 Body
mixin 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
and Response
— this provides these objects with an associated body (a byte stream), a used flag (initially unset), and a MIME type (initially the empty byte sequence).
Properties
Body.bodyUsed
Read only- Contains a
Boolean
that indicates whether the body has been read.
Methods
Body.arrayBuffer()
- Takes a
Response
stream and reads it to completion. It returns a promise that resolves with anArrayBuffer
. Body.blob()
- Takes a
Response
stream and reads it to completion. It returns a promise that resolves with aBlob
. Body.formData()
- Takes a
Response
stream and reads it to completion. It returns a promise that resolves with aFormData
object. Body.json()
- Takes a
Response
stream and reads it to completion. It returns a promise that resolves with aJSON
object. Body.text()
- Takes a
Response
stream and reads it to completion. It returns a promise that resolves with aUSVString
(text).
Examples
In our basic fetch example (run example live) we use a simple fetch call to grab an image and display it in an <img>
tag. You'll notice that since we are requesting an image, we need to run Body.blob
(Response
implements body) to give the response its correct MIME type.
var myImage = document.querySelector('.my-image'); fetch('flowers.jpg').then(function(response) { return response.blob(); }).then(function(response) { var objectURL = URL.createObjectURL(response); myImage.src = objectURL; });
Specifications
Specification | Status | Comment |
---|---|---|
Fetch The definition of 'Body' 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
License
© 2016 Mozilla Contributors
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-us/docs/web/api/body