Response
A interface Response
da Fetch API representa a resposta para uma requisição.
Você pode criar um novo objeto Response
usando o construtor Response.Response()
(en-US), porém é mais provável você encontrar um objeto Response sendo retornado como o resultado de uma outra operação da API, por exemplo um service worker Fetchevent.respondWith
(en-US), ou um simples GlobalFetch.fetch()
(en-US).
Construtor
Response()
(en-US)-
Cria um novo objeto
Response
.
Propriedades
Response.headers
(en-US) Somente leitura-
Contém o objeto
Headers
(en-US) associado à resposta. Response.ok
(en-US) Somente leitura-
Contém um valor booleano indicando se a resposta foi bem sucedida ("status" no intervalo 200-299) ou não.
Response.redirected
(en-US) Somente leitura-
Indica se a resposta é ou não o resultado de um redirecionamento; isto é, sua lista de URL tem mais de uma entrada.
Response.status
(en-US) Somente leitura-
Contém o código de "status" da resposta (ex.,
200
para um sucesso). Response.statusText
(en-US) Somente leitura-
Contém a mensagem de "status" correspondente ao código de "status" (ex.,
OK
para200
). Response.type
(en-US) Somente leitura-
Contém o tipo da resposta (ex.,
basic
,cors
). Response.url
(en-US) Somente leitura-
Contém a URL de resposta.
Response.useFinalURL
-
Contém um valor boleano indicando se essa é a URL final da resposta.
Response
implementa Body
, por isso também tem as seguintes propriedades disponíveis:
Body.body
(en-US) Somente leitura-
Um simples "getter" para ler do conteúdo do corpo através da interface
ReadableStream
(en-US). Body.bodyUsed
(en-US) Somente leitura-
Armazena um
Boolean
(en-US) que indica se o corpo já foi utilizado em uma resposta.
Métodos
Response.clone()
(en-US)-
Cria uma cópia do objeto
Response
. Response.error()
(en-US)-
Retorna um novo objeto
Response
associado a um erro de rede. Response.redirect()
(en-US)-
Cria uma nova resposta com uma URL diferente.
Response
implementa Body
, por isso também tem as seguintes propriedades disponíveis:
Body.arrayBuffer()
(en-US)-
Recebe um "stream"
Response
e lê até a conclusão. Retorna uma "promise" que resolve com umArrayBuffer
. Body.blob()
(en-US)-
Recebe um "stream"
Response
e lê até a conclusão. Retorna uma "promise" que resolve com umBlob
. Body.formData()
(en-US)-
Recebe um "stream"
Response
e lê até a conclusão. Retorna uma "promise" que resolve com um objetoFormData
. Body.json()
(en-US)-
Recebe um "stream"
Response
e lê até a conclusão. Retorna uma "promise" que resolve com o resultado do parseamento do texto do corpo comoJSON
. Body.text()
(en-US)-
Recebe um "stream"
Response
e lê até a conclusão. Retorna uma "promise" que resolve com umUSVString
(en-US) (texto).
Exemplos
Em nosso exemplo básico fetch (executar exemplo live) nós usamos uma simples chamada fetch()
para pegar uma imagem e exibi-la em uma tag <img>
. A chamada fetch()
retorna uma "promise", que resolve com o objeto Response
associado com o recurso da operação "fetch". Você irá notar que como estamos solicitando uma imagem, nós precisamos executar Body.blob
(en-US) (Response
implementa o "body") para dar à resposta seu tipo MIME correto.
js
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;
});
Você também pode usar o construtor Response.Response()
(en-US) para criar seu objeto Response
personalizado:
js
var myResponse = new Response();
Especificações
Specification |
---|
Fetch Standard # response-class |
Compatibilidade com navegadores
BCD tables only load in the browser