Qual código de status devo definir para UPDATE
( PUT
) e DELETE
(por exemplo, produto atualizado com sucesso)?
fonte
Qual código de status devo definir para UPDATE
( PUT
) e DELETE
(por exemplo, produto atualizado com sucesso)?
Para uma solicitação PUT : HTTP 200 ou HTTP 204 deve implicar "recurso atualizado com sucesso".
Para uma solicitação DELETE : HTTP 200 ou HTTP 204 deve implicar "recurso excluído com sucesso". O HTTP 202 também pode ser retornado, o que implicaria que a instrução foi aceita pelo servidor e o "recurso foi marcado para exclusão".
Se um recurso existente for modificado, os códigos de resposta 200 (OK) ou 204 (sem conteúdo)> DEVEM ser enviados para indicar a conclusão bem-sucedida da solicitação.
Uma resposta bem-sucedida DEVE ser 200 (OK) se a resposta incluir uma entidade que descreve o status, 202 (Aceito) 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.
Fonte: W3.org: Definições de método HTTP / 1.1
HTTP 200 OK: resposta padrão para solicitações HTTP bem-sucedidas. A resposta real dependerá do método de solicitação usado.
HTTP 204 sem conteúdo: o servidor processou a solicitação com êxito, mas não está retornando nenhum conteúdo
Resposta curta: para PUT e DELETE, você deve enviar 200 (OK) ou 204 (sem conteúdo).
Resposta longa: aqui está um diagrama de decisão completo (clique para ampliar).
Fonte: https://github.com/for-GET/http-decision-diagram
fonte
Aqui estão algumas dicas:
EXCLUIR
COLOCAR
fonte
O RFC 2616 descreve quais códigos de status usar .
E não, nem sempre é 200.
fonte
Além de 200 e 204, 205 (Redefinir conteúdo) poderia ser uma resposta válida.
fonte
Como a pergunta investiga se DELETE "deveria" retornar 200 vs 204 , vale a pena considerar que algumas pessoas recomendam retornar uma entidade com links, portanto a preferência é por 200 .
http://blog.ploeh.dk/2013/04/30/rest-lesson-learned-avoid-204-responses/
Pessoalmente, eu não diria que 204 está errado (nem o autor; ele diz "irritante") porque um bom cache no lado do cliente tem muitos benefícios. O melhor é ser consistente de qualquer maneira.
fonte
Aqui está um código de status, que você deve conhecer para o seu tipo de conhecimento.
1XX Respostas de informações
2XX Success
Redirecionamento 3XX
Erros de cliente 4XX
Erros de servidor 5XX
fonte
Em junho de 2014, o RFC7231 obsoleta o RFC2616. Se você estiver executando o REST sobre HTTP, o RFC7231 descreve exatamente o comportamento esperado de GET, PUT, POST e DELETE
fonte
Quando um recurso é modificado, o código de resposta deve ser 200 ("OK") . Se o estado do recurso mudar de uma maneira que altere o URI para o recurso (por exemplo, uma conta de usuário seja renomeada), o código de resposta será 301 ("Movido permanentemente") e o cabeçalho Local deverá fornecer o novo URI.
Quando um objeto é excluído, o código de resposta deve ser 200 ("OK").
Siga o link abaixo para obter mais detalhes - código de status para descanso
fonte