Response
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since March 2017.
La interfaz Response
de la Fetch API representa la respuesta a una petición.
Tú puedes crear un nuevo objeto Response
usando el constructorResponse.Response()
, pero es más probable encontrar un objeto Response siendo devuelto como resultado de la operación de otra API, por ejemplo un service worker Fetchevent.respondWith
, o un simple GlobalFetch.fetch()
.
Constructor
Response()
-
Crea un nuevo objeto
Response
.
Propiedades
Response.headers
Read only-
Contiene el objeto
Headers
asociado con la respuesta. Response.ok
Read only-
Contiene un estado indicando si la respuesta fue exitosa (estado en el rango 200-299) o no.
Response.redirected
Read only-
Indica si la respuesta es o no el resultado de una redirección; eso es, su lista de URL tiene más de una entrada.
Response.status
Read only-
Contiene el código de estado de la respuesta (e.g.,
200
si fue exitosa). Response.statusText
Read only-
Contiene el mensaje de estado correspondiente al código de estado (e.g.,
OK
para el Código200
). Response.type
Read only-
Contiene el tipo de respuesta (e.g.,
basic
,cors
). Response.url
Read only-
Contiene la URL de respuesta.
Response.useFinalURL
-
Contiene un valor booleano indicando si ésta es la URL final de respuesta.
Response
implementa Body
, de modo que además contiene las propiedades que se detallan a continuación:
Body.body
Read only-
Un simple método get que expone un
ReadableStream
de los contenidos del body. Body.bodyUsed
Read only-
Almacena un
Boolean
en el cuál declara si el body ya fue enviado como respuesta anteriormente.
Methods
Response.clone()
-
Clona un Objeto Respuesta.
Response.error()
-
Devuelve un nuevo objeto Respuesta asociado a un error de red.
Response.redirect()
-
Crea una nueva respuesta con un URL distinto.
Response
iimplementaBody
, de modo que además contiene los métodos que se detallan a continuación:
Body.arrayBuffer()
-
Toma un flujo
Response
y lo lee hasta completarlo. Devuelve una promesa que resuelve con unArrayBuffer
. Body.blob()
-
Toma un flujo
Response
y lo lee hasta completarlo. Devuelve una promesa que resuelve con unBlob
. Body.formData()
-
Toma un flujo
Response
y lo lee hasta completarlo. Devuelve una promesa que resuelve con un objetoFormData
. Body.json()
-
Recibe un flujo
Response
y lo lee hasta completarlo. Devuelve una promesa que resuelve comoJSON
el texto del Body enviado. Body.text()
-
Recibe un flujo
Response
y lo lee hasta completarlo. Devuelve una promesa que resuelve con unUSVString
(texto).
Examples
En nuestro ejemplo básico de ferch (ejecutar el ejemplo) usamos una llamada fetch()
para descargar una imagen y mostrarla en una etiqueta <img>
. La llamda a fetch()
call devuelve una promesa, la cual resuelve a un objeto Response
asociado a la operación fetch.
Observa como ya que lo que estamos solicitando es una imagen, necesitamos ejecutar Body.blob
(Response
implements body) para darle a la respuesta su tipo MIME correcto.
var myImage = document.querySelector(".my-image");
fetch("flowers.jpg")
.then(function (response) {
return response.blob();
})
.then(function (blob) {
var objectURL = URL.createObjectURL(blob);
myImage.src = objectURL;
});
También puedes usar el constructor Response.Response()
para crear tus objetos Response
personalizados:
var myResponse = new Response();
Especificaciones
Specification |
---|
Fetch Standard # response-class |
Compatibilidad con navegadores
BCD tables only load in the browser