Considerando os verbos HTTP, e que para atualizar recursos no servidor podemos tanto utilizar os métodos PUT
quanto o PATCH
, qual a diferença entre usar um e outro?
Considerando os verbos HTTP, e que para atualizar recursos no servidor podemos tanto utilizar os métodos PUT
quanto o PATCH
, qual a diferença entre usar um e outro?
O PUT, é usado para alteração de um dado completo
O PATCH é usado para atualização parcial.
Olá Vânia, grato pela resposta! Mas, sinceramente, isso para mim ainda é muito abstrato... Você poderia me dar algum exemplo?
Em poucas palavras, os métodos HTTP PUT e PATCH são usados para indicar um requisição de alteração de dados.
Geralmente, ao usar-se o PUT, fica legível que a alteração do dado será com referência a entidade completa.
Exemplo: (/usuario/1234) :
Resultado: {'id': 1234, 'name': 'Joao', 'idade': 25, 'documento': '123.321.12-X'}
O PATCH é usado para atualização parcial, quando você não quer mandar o payload completo.
Exemplo: (/usuario/1234) :
Resultado: {'name': 'João'}
PUT: é quando tu faz uma requisição a um recurso para modificá-lo. Nesse método tu irá mudar todo os dados do recurso, como no exemplo do Luís, se caso esse recurso não exista, é possível criá-lo através dessa única requisição.
PATCH: você usa quando vai alterar alguns dados de um recurso. Ele não pode criar um novo recurso como é feito no put.
Eh possível criar um recurso usando PUT
, Vânia?
Sim Daniel, é possível criar recursos com o PUT. No exemplo que o Luís deu se não existisse um usuário com o id 1234, ele seria criado com todos esses dados, caso existisse, ele seria modificado.
Mas o aconselhável é criar através do método POST.