The type
read-only property of the Response
interface contains the type of the response. It can be one of the following:
basic
: Normal, same origin response, with all headers exposed except “Set-Cookie” and “Set-Cookie2″.cors
: Response was received from a valid cross-origin request. Certain headers and the body may be accessed.error
: Network error. No useful information describing the error is available. The Response’s status is 0, headers are empty and immutable. This is the type for a Response obtained fromResponse.error()
.opaque
: Response for “no-cors” request to cross-origin resource. Severely restricted.opaqueredirect
: The fetch request was made withredirect: "manual"
. The Response's status is 0, headers are empty, body is null and trailer is empty.
Note: An "error" Response never really gets exposed to script: such a response to a fetch()
would reject the promise.
Syntax
var myType = response.type;
Value
A ResponseType
string indicating the type of the response.
Example
In our Fetch Response example (see Fetch Response live) we create a new Request
object using the Request()
constructor, passing it a JPG path. We then fetch this request using fetch()
, extract a blob from the response using Body.blob
, create an object URL out of it using URL.createObjectURL
, and display this in an <img>
.
Note that at the top of the fetch()
block we log the response type
to the console.
var myImage = document.querySelector('img'); var myRequest = new Request('flowers.jpg'); fetch(myRequest).then(function(response) { console.log(response.type); // returns basic by default response.blob().then(function(myBlob) { var objectURL = URL.createObjectURL(myBlob); myImage.src = objectURL; }); });
Specifications
Specification | Status | Comment |
---|---|---|
Fetch The definition of 'type' in that specification. |
Living Standard | Initial definition |
Browser compatibility
The compatibility table on this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.
Desktop | Mobile | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
type | Chrome
Full support
42
| Edge Full support 14 | Firefox
Full support
39
| IE No support No | Opera
Full support
29
| Safari No support No | WebView Android No support No | Chrome Android No support No | Firefox Android No support No | Opera Android
Full support
29
| Safari iOS No support No | Samsung Internet Android No support No |
Legend
- Full support
- Full support
- No support
- No support
- Experimental. Expect behavior to change in the future.
- Experimental. Expect behavior to change in the future.
- User must explicitly enable this feature.
- User must explicitly enable this feature.