Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

[Dúvida] Operador $set

Na refatoração usamos o operador $set para evitar perda de dados ao fazer uma atualização parcial. Usamos o método put ao invés do patch que permite atualizações parciais. Nesse caso, não seria melhor usarmos o patch ou a melhor prática é usar o put com o operador $set?

1 resposta
solução!

Olá, Beatriz! Tudo bem?

O método PUT é geralmente utilizado para atualizações completas de um recurso. Quando você usa PUT, a expectativa é que você envie a representação completa do recurso, e qualquer campo não incluído na solicitação pode ser sobrescrito ou removido.

Por outro lado, o método PATCH é especificamente projetado para atualizações parciais. Ele permite que você envie apenas os campos que deseja atualizar, sem afetar os outros campos do recurso.

Quando você usa o operador $set com PUT, você está tentando garantir que apenas os campos especificados sejam atualizados, evitando a perda de dados. No entanto, isso pode ser considerado um uso não convencional do PUT, já que a semântica esperada do PUT é enviar a representação completa do recurso.

Portanto, sim, a melhor prática seria usar PATCH para atualizações parciais, pois é o método mais adequado para esse propósito. Isso tornará sua API mais intuitiva e alinhada com as convenções RESTful.

Espero ter ajudado e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓.