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
BCD tables only load in the browser