Esta tradução está incompleta. Por favor, ajude a traduzir este artigo.

This is an experimental technology
Check the Browser compatibility table carefully before using this in production.

A Fetch API fornece uma interface para buscar recursos (por exemplo, em toda a rede). Parecerá familiar para qualquer pessoa que tenha usado XMLHttpRequest, porém a nova API oferece um conjunto de recursos mais poderoso e flexível.

Conceitos e uso

O Fetch fornece uma definição genérica de objetos de Request e Response  (e outras coisas envolvidas com solicitações de rede). Isso permitirá que eles sejam usados onde quer que sejam necessários no futuro, seja para service workers, Cache API e outras coisas similares que manipulam ou modifiquem pedidos e respostas ou qualquer tipo de caso de uso que possa exigir que você gere suas próprias responses programaticamente.

Ele também fornece uma definição para conceitos relacionados como CORS e a semântica de cabeçalho de origem HTTP, suplantando suas definições separadas em outro lugar.

Para fazer uma solicitação e buscar um recurso, use o método GlobalFetch.fetch . Ele é implementado em várias interfaces, especificamente Window e WorkerGlobalScope. Isso torna disponível em praticamente qualquer contexto em que você possa querer obter recursos.

O método fetch () tem um argumento obrigatório, o caminho para o recurso que deseja obter. Ele retorna uma promessa que resolve a Response para esta requisição, seja ele bem-sucedido ou não. Você também pode, opcionalmente, passar um objeto de opções de inicialização como o segundo argumento (consulte Request).

Uma vez que uma Response é recuperada, há uma série de métodos disponíveis para definir o conteúdo do corpo e como ele deve ser tratado (veja Body.)


Você pode criar um pedido e uma resposta diretamente usando os construtores Request() e Response(), mas é improvável que você faça isso diretamente. Em vez disso, é mais provável que sejam criados como resultados de outras ações da API (por exemplo,  FetchEvent.respondWith de service workers).

Note: Encontre mais informações sobre os recursos do Fetch API em Using Fetch,  e conceitos para estudos em Fetch basic concepts.

Fetch Interfaces

GlobalFetch
Contém o método fetch() usado para buscar um recurso.
Headers
Representa cabeçalhos response/request, permitindo que você os consulte e faça diferentes ações dependendo dos resultados.
Request
Representa um pedido de recursos.
Response
Representa a resposta de uma requisição.

Fetch mixin

Body
Providencia métodos relacionados ao corpo da resposta/requisição, permitindo que você declare qual seu tipo de conteúdo e como ele deve ser tratado.

Especificações

Especificação Status Comentários
Fetch Padrão em tempo real Definição inicial

Recurso Chrome Firefox (Gecko) Internet Explorer Opera Safari (WebKit)
Suporte Básico 42.0
 
39 (39)
34 behind pref
Sem compatibilidade

29
28 behind pref

Sem compatibilidade WebKit bug 151937
Streaming response body 43.0

Desconhecido

Desconhecido

Desconhecido

Desconhecido

 
Recurso Android Android Webview Firefox Mobile (Gecko) Firefox OS (Gecko) IE Phone Opera Mobile Safari Mobile Chrome for Android
Suporte Básico Sem compatibilidade 42.0 Sem compatibilidade Sem compatibilidade Sem compatibilidade Sem compatibilidade Sem compatibilidade 42.0
Streaming respone body Sem compatibilidade 43.0

Desconhecido

Desconhecido

Desconhecido

Desconhecido

Desconhecido

43.0

Veja também

Etiquetas do documento e colaboradores

 Colaboradores desta página: BrunoLucas, fapbatista, tcelestino
 Última atualização por: BrunoLucas,