Pergunta

Estou implementando o suporte DELETE em uma API ReST (construída no ServiceStack) e me perguntando qual código de resposta retornar após um DELETE bem-sucedido.

HTTP define 410 como:

O recurso solicitado não está mais disponível no servidor e nenhum endereço de encaminhamento é conhecido.Espera-se que esta condição seja considerada permanente.Clientes com recursos de edição de links DEVEM excluir referências ao Request-URI após a aprovação do usuário.Se o servidor não souber ou não tiver recursos para determinar se a condição é permanente ou não, o código de status 404 (Não encontrado) DEVE ser usado.Esta resposta pode ser armazenada em cache, a menos que indicado de outra forma.

Agora, se um recurso acaba de ser DELETEd, provavelmente quero que muitas dessas recomendações sejam aplicadas ...mas a prática aceita parece estar retornando um 200 OK seguindo um sucesso DELETE - especialmente porque o 4XX intervalo deve denotar condições de erro.

Algum argumento convincente de uma forma ou de outra além das diretrizes da especificação HTTP?

Foi útil?

Solução

RFC 2616 Seção 9.7 declara especificamente o seguinte em relação à resposta para DELETE:

Uma resposta bem -sucedida deve ser 200 (OK) se a resposta incluir uma entidade que descreve o status, 202 (aceita) se a ação ainda não foi promulgada ou 204 (sem conteúdo) se a ação foi promulgada, mas a resposta não incluir uma entidade.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top