✍️Mão na Massa - Post

🎾 Exercícios sobre POST com fetch

  1. O que significa o método HTTP POST e quando você deve usá-lo em uma requisição?

  2. Explique por que precisamos definir o cabeçalho 'Content-Type': 'application/json' ao enviar dados via POST.

  3. Qual é a função do JSON.stringify() no corpo da requisição? O que aconteceria se você não usasse ele?

  4. No código usando fetch para POST, o que a função .then(response => response.json()) está fazendo?

  5. Explique o que acontece dentro do bloco .catch() e por que é importante usar ele nas requisições.

  6. Como você faria para enviar um objeto com os campos username e password em uma requisição POST usando fetch? Escreva o código.

  7. Por que a versão com async/await pode ser considerada mais fácil de ler que a versão com .then()?

  8. Se o servidor responder com um erro (exemplo: 400 ou 500), o .catch() do fetch vai ser executado? Justifique.

  9. Como você verificaria se a resposta da requisição POST foi bem-sucedida antes de chamar response.json()?

  10. Crie uma função em JavaScript usando fetch e async/await que envia um POST para uma API qualquer e retorna os dados recebidos.


🎃 Exercícios práticos

  1. Faça uma requisição POST para https://jsonplaceholder.typicode.com/posts enviando um post com título “Teste 1”, corpo “Conteúdo 1” e userId 101. Mostre no console o resultado da resposta.

  2. Modifique o código do exercício anterior para que ele trate erros com try/catch usando async/await.

  3. Crie uma função chamada sendPost que recebe três parâmetros: title, body e userId, e envia esses dados via POST para a API. A função deve retornar os dados da resposta.

  4. Chame a função sendPost criada no exercício anterior com valores diferentes, e imprima no console o resultado.

  5. Implemente um formulário HTML simples com três campos (title, body, userId) e um botão para enviar esses dados via fetch POST para a API, mostrando a resposta na tela.

  6. Explique o que acontece se você enviar um objeto vazio {} no corpo da requisição POST para a API e faça um teste para comprovar.


Last updated