ANÚNCIO

~/questoes/programacao

Qual é a diferença entre os métodos PUT e PATCH em uma API REST?

Responda, confira o feedback e use o resultado para orientar sua revisão.
Aula de referência API REST com Laravel 12: CRUD Completo com Sanctum e Paginação
Para fixar

PUT vs PATCH: Qual é a diferença nas APIs REST?

Conceito central

PUT e PATCH são dois métodos HTTP usados para atualizar recursos em uma API REST, mas com abordagens diferentes. PUT substitui o recurso inteiro, enquanto PATCH atualiza apenas os campos específicos que você envia na requisição.

Por que essa resposta faz sentido

A alternativa B está correta porque PUT atualiza todo o recurso (substituição completa), enquanto PATCH permite atualizar apenas determinados campos sem afetar o resto dos dados. Isso torna PATCH mais flexível e eficiente em muitos cenários.

Armadilhas comuns

  • Confundir PUT com PATCH achando que ambos fazem a mesma coisa. Lembre-se: PUT é substituição completa, PATCH é atualização parcial.
  • Enviar uma requisição PUT incompleta (sem todos os campos) esperando que funcione como PATCH. PUT exige o corpo completo do recurso.
  • Achar que PATCH é sempre melhor que PUT. Na verdade, PUT é mais apropriado quando você quer garantir um estado específico do recurso inteiro.

Entenda as alternativas

A

PATCH não é obsoleto no Laravel 12. Ambos os métodos (PUT e PATCH) continuam válidos e têm seus próprios usos. A escolha entre eles depende da situação, não de compatibilidade.

B

Esta é a diferença fundamental: PUT substitui o recurso inteiro, exigindo que você envie todos os campos; PATCH atualiza apenas os campos que você enviar, preservando os demais.

C

É o oposto! PUT atualiza todos os campos (ou pelo menos espera todos), e PATCH é que atualiza apenas determinados campos. Os papéis estão invertidos nesta alternativa.

D

A velocidade entre PUT e PATCH não é uma diferença relevante entre os métodos. A escolha se baseia na semântica e na necessidade do seu caso de uso, não em performance.

Dica prática: Na prática: use PUT quando estiver atualizando o perfil inteiro de um usuário (enviando nome, email, telefone). Use PATCH quando o usuário quiser apenas mudar sua senha, sem tocar nos outros campos.

Revise pensando: Se você precisa atualizar apenas a data de entrega de um pedido sem mexer em outros dados, qual método HTTP deveria usar: PUT ou PATCH?