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.
* Some parts of this feature may have varying levels of support.
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