Conectando com APIs Backend

Área: Frontend | Nível recomendado: Iniciante

circle-info

Esta missão ensina como as aplicações React interagem com APIs backend. Aprenderemos a usar a Fetch API para fazer requisições HTTP, gerenciar o estado e os efeitos colaterais com hooks do React, e construir um componente interativo que consome uma API, processando respostas e lidando com erros de forma eficaz.

Vídeo

Link direto: https://youtu.be/hTncMAFn0nsarrow-up-right

Tópicos

  1. Introdução às APIs e Uso da Fetch API:

    • Discussão sobre o papel das APIs na comunicação entre frontend e backend.

    • Como usar a Fetch API para realizar requisições GET e POST para um servidor backend.

  2. Hooks para Gerenciamento de Estado e Efeitos:

    • Detalhes sobre como utilizar os hooks useState e useEffect para gerenciar o estado e lidar com efeitos colaterais em React.

    • Exemplos práticos de como esses hooks são essenciais para interações dinâmicas com APIs.

  3. Manipulação de Respostas e Tratamento de Erros:

    • Técnicas para manipular respostas de API e realizar tratamento adequado de erros.

    • Estratégias para garantir que a aplicação se comporte de maneira robusta em cenários de erro.

  4. Construção de um Componente Interativo:

    • Implementação de um componente que faz requisições a uma API e exibe dados.

    • Inclusão de funcionalidades interativas, permitindo aos usuários enviar dados para o backend e receber respostas que alteram a UI.

Material de Apoio

Repositório no GitHub

PDF para Download

Miro

Exercícios de Fixação

circle-info

Use esses exercícios para reforçar o que acabou de aprender. Se errar, leia a explicação para entender melhor o conceito.

chevron-rightQual é a função principal da Fetch API no desenvolvimento web?hashtag

A) Instalar pacotes npm automaticamente.

B) Facilitar a comunicação entre o frontend e o backend através de requisições HTTP.

C) Criar componentes React.

D) Inicializar um novo projeto NodeJS.

chevron-rightResposta corretahashtag

Qual é a função principal da Fetch API no desenvolvimento web?

Resposta Correta: B

Feedback: A Fetch API facilita a comunicação entre o frontend e o backend através de requisições HTTP, permitindo que os dados sejam enviados e recebidos de um servidor.


chevron-rightComplete o código para realizar uma requisição GET usando a Fetch API.hashtag
chevron-rightResposta corretahashtag

Complete o código para realizar uma requisição GET usando a Fetch API.

Resposta Correta: json

Feedback: O método response.json() é usado para converter a resposta da Fetch API em um objeto JavaScript.


chevron-rightVerdadeiro ou Falso: O hook useState do React é utilizado para gerenciar efeitos colaterais.hashtag

A) Verdadeiro

B) Falso

chevron-rightResposta corretahashtag

Verdadeiro ou Falso: O hook useState do React é utilizado para gerenciar efeitos colaterais.

Resposta Correta: B

Feedback: Falso. O hook useState é usado para gerenciar o estado dos componentes React, enquanto o hook useEffect é usado para gerenciar efeitos colaterais.


chevron-rightComplete o código para configurar um endpoint que responde com uma lista de personagens.hashtag
chevron-rightResposta corretahashtag

Complete o código para configurar um endpoint que responde com uma lista de personagens.

Resposta Correta: fetch

Feedback: O método fetch da biblioteca fetch é usado para realizar uma requisição.

Exercícios de Validação

circle-info

Esses exercícios testarão sua compreensão prática. Revise o feedback para melhorar suas habilidades.

Desafio de Código

Crie um componente React que busque dados de uma API e exiba uma lista de personagens. O componente deve:

  1. Utilizar a Fetch API para buscar dados.

  2. Gerenciar o estado dos dados usando useState.

  3. Utilizar useEffect para realizar a busca de dados quando o componente for montado.

  4. Exibir os dados na interface do usuário.

chevron-rightResposta esperadahashtag

Feedback: Certifique-se de que o componente está utilizando useState para gerenciar o estado dos personagens e useEffect para buscar os dados da API quando o componente for montado. A lista de personagens deve ser exibida na interface do usuário.

Revisão de Código

triangle-exclamation
chevron-rightResposta Corretahashtag

Erro: O array de dependências no useEffect está incorreto. Deve ser um array vazio para que a busca de dados ocorra apenas uma vez quando o componente for montado.

Feedback: Certifique-se de que o array de dependências do useEffect está correto para evitar chamadas infinitas à API.

Projeto Prático

Crie uma aplicação React que inclua:

  1. Um componente que busque dados de uma API e exiba uma lista de itens.

  2. Funcionalidade para deletar itens da lista através de uma requisição DELETE.

  3. Tratamento de erros e exibição de mensagens de erro usando react-toastify.

Tarefas

  1. Configuração Inicial:

    • Inicialize um novo projeto React.

    • Instale as dependências necessárias, incluindo react-toastify.

  2. Implementação dos Endpoints no api.js:

    • Implemente funções para realizar requisições GET e DELETE.

  3. Criação do Componente React:

    • Crie um componente que faça uso das funções do api.js para buscar e deletar itens da lista.

    • Utilize react-toastify para tratar e exibir erros.

chevron-rightCódigo esperadohashtag

Feedback Detalhado

  • Verificação dos Endpoints: Certifique-se de testar cada rota (GET para buscar itens e DELETE para deletar itens) e verificar as respostas.

  • Tratamento de Erros: Utilize o toast.error para exibir mensagens de erro em caso de falhas nas requisições.

  • Estrutura: A aplicação deve utilizar useState para gerenciar o estado dos itens e useEffect para buscar dados da API quando o componente for montado.

Last updated