
15 - Alteração (PATCH)
Olá pessoal! Nessa aula, iremos implementar uma rota para alterar dados.
Vamos utilizar a requisição PATCH. Para que funcione, será necessário passar um objeto contendo as características que deseja alterar 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 pacialmente as informações de uma pessoa
router.patch('/:codigo', (req, res) => {
// Extrair o código enviado via parâmetro
const codigo = parseInt(req.params.codigo);
// Localizar a pessoa através do código
const pessoa = pessoas.find(p => p.codigo === codigo);
// Caso não encontrar a pessoa
if (!pessoa) {
return res.status(404).json({ mensagem: 'Pessoa não encontrada.' });
}
// Extrair as características do objeto enviado
const { nome, idade, cidade } = req.body;
// As características que não forem informadas, manteremos as atuais
if (nome !== undefined) pessoa.nome = nome;
if (idade !== undefined) pessoa.idade = idade;
if (cidade !== undefined) pessoa.cidade = cidade;
// Retorna um objeto do tipo pessoa
res.status(200).json(pessoa);
});
Clique aqui para se tornar membro do canal
Abaixo segue nossa aula no YouTube: