Por que o cmd DELETE, que teoricamente altera o status do servidor, ao ser executado uma 2a, 3a, 4a vez sobre o mesmo recurso retorna o status 200? Pq ele eh idempotente?
Por que o cmd DELETE, que teoricamente altera o status do servidor, ao ser executado uma 2a, 3a, 4a vez sobre o mesmo recurso retorna o status 200? Pq ele eh idempotente?
Boa noite, Marcelo! Como vai?
De acordo com a documentação do protocolo HTTP
If a DELETE method is successfully applied, the origin server SHOULD send a 202 (Accepted) status code if the action will likely succeed but has not yet been enacted, a 204 (No Content) status code if the action has been enacted and no further information is to be supplied, or a 200 (OK) status code if the action has been enacted and the response message includes a representation describing the status.
Sendo assim, de acordo com a documentação, o ideal seria retornar o status 204 nas requisições seguintes após o sucesso da remoção da primeira requisição.
Obs.: O método HTTP não é idempotente pq o resultado de uma requisição realizada com sucesso não é independente do número de vezes que é executada.
Grande abraço e bons estudos.