Article image
Hannatty Barros
Hannatty Barros28/10/2024 15:46
Compartilhe

Fetch API - Uma Introdução

  • #JavaScript

Fetch API

Trata-se de uma função integrada no JavaScript usada para fazer requisições HTTP de maneira assíncrona. Ele permite que o navegador se comunique com servidores para buscar ou enviar dados sem precisar recarregar a página.

Funcionamento ⚙️

A fetch() realiza uma requisição HTTP e sempre devolve uma Promise. Essa Promise vai "esperar" até o servidor responder e, quando isso acontece, a Promise é resolvida com um objeto especial chamado Response. Esse objeto Response carrega várias informações sobre o resultado da requisição.

O conteúdo do response compreende:

💡 Status da resposta | Propriedade ok | Conteúdo da resposta

Onde:

Status da resposta → O Response inclui um código de status. Esses códigos informam se a requisição foi bem-sucedida ou teve algum problema.

response.ok → Propriedade booleana (true ou false) que ajuda a verificar se a requisição foi bem-sucedida. Será true para códigos de status entre 200 e 299, e false para demais códigos.

Conteúdo da Resposta → Os dados solicitados na requisição ficam "guardados" dentro do Response, mas precisam ser processados. Para isto, podem ser usados o response.json() (para dados em formato JSON) ou response.text() (para texto simples) para extrair esses dados do Response.

Métodos de Tratamento de Resposta 🔀

São responsáveis por gerenciar o resultado de uma Promise. Esses métodos são fundamentais para o fluxo assíncrono, permitindo controlar tanto o sucesso quanto o erro na requisição e mantendo o código organizado.

Vejamos abaixo:

.then(): Método de processamento de sucesso. Esse método é chamado quando a Promise é resolvida com sucesso, ou seja, quando a requisição recebe uma resposta sem erros. Aqui, podemos processar e manipular os dados recebidos.

.catch(): Método de tratamento de erro. Chamado quando a Promise é rejeitada, ou seja, quando há falha na requisição ou outro erro ocorre. Aqui, lidamos com qualquer problema, como falta de conexão, URL incorreta ou resposta não encontrada.

Exemplo de uma requisição usando fetch:

image

Compartilhe
Comentários (0)