
14 - Alteração (PUT)
Olá pessoal! Nessa aula, iremos implementar uma rota para alterar dados.
Vamos utilizar a requisição PUT. Para que funcione, será necessário passar um objeto completo via body, e o código da pessoa através da url (parâmetro).
Estrutura da rota
Veja abaixo como estruturar essa rota:
// Rota para atualizar todas as informações de uma pessoa
router.put('/:codigo', (req, res) => {
// Extrair o código enviado via parâmetro
const codigo = parseInt(req.params.codigo);
// Localizar o indice da pessoa com o código recebido via parâmetro
const indicePessoa = pessoas.findIndex(p => p.codigo === codigo);
// Caso não encontrar a pessoa
if (indicePessoa == -1) {
return res.status(404).json({ mensagem: 'Pessoa não encontrada.' });
}
// Extrair as características do objeto enviado
const { nome, idade, cidade } = req.body;
// Caso o nome, idade ou cidade não sejam informados, retorna um status 400
if (!nome || !idade || !cidade) {
return res.status(400).json({ mensagem: 'Nome, idade e cidade são obrigatórios para PUT.' });
}
// Criar nova pessoa
pessoas[indicePessoa] = {
codigo,
nome,
idade,
cidade
};
// Retorna a pessoa com todas as características atualizadas
res.status(200).json(pessoas[indicePessoa]);
});
Clique aqui para se tornar membro do canal
Abaixo segue nossa aula no YouTube: