Какой код статуса я должен установить для UPDATE
( PUT
) и DELETE
(например, продукт успешно обновлен)?
источник
Какой код статуса я должен установить для UPDATE
( PUT
) и DELETE
(например, продукт успешно обновлен)?
Для запроса PUT : HTTP 200 или HTTP 204 должны означать «ресурс обновлен успешно».
Для запроса DELETE : HTTP 200 или HTTP 204 должны означать «ресурс успешно удален». HTTP 202 также может быть возвращен, что будет означать, что инструкция была принята сервером и «ресурс был помечен для удаления».
Если существующий ресурс изменен, то должны быть отправлены либо коды ответа 200 (ОК), либо 204 (Нет содержимого)>, чтобы указать успешное завершение запроса.
Успешный ответ ДОЛЖЕН быть 200 (ОК), если ответ включает в себя объект, описывающий состояние, 202 (Принят), если действие еще не было выполнено, или 204 (Нет содержимого), если действие было выполнено, но ответ не включает сущность.
Источник: W3.org: HTTP / 1.1 Определения методов
HTTP 200 OK: стандартный ответ для успешных запросов HTTP. Фактический ответ будет зависеть от используемого метода запроса.
HTTP 204 Нет содержимого: сервер успешно обработал запрос, но не возвращает никакого содержимого
Источник: список кодов состояния HTTP: 2xx Success
Краткий ответ: для PUT и DELETE вы должны отправить либо 200 (OK), либо 204 (No Content).
Длинный ответ: вот полная схема решения (нажмите, чтобы увеличить).
Источник: https://github.com/for-GET/http-decision-diagram
источник
Вот несколько советов:
УДАЛЯТЬ
ПОЛОЖИЛ
источник
RFC 2616 описывает, какие коды состояния использовать .
И нет, это не всегда 200.
источник
В дополнение к 200 и 204, 205 (Reset Content) может быть действительным ответом.
источник
Поскольку возникает вопрос, должен ли DELETE возвращать 200 против 204, стоит учесть, что некоторые люди рекомендуют возвращать объект со ссылками, поэтому предпочтение отдается 200 .
http://blog.ploeh.dk/2013/04/30/rest-lesson-learned-avoid-204-responses/
Лично я бы не сказал, что 204 неправильно (как и автор, он говорит «раздражает»), потому что хорошее кэширование на стороне клиента имеет много преимуществ. Лучше всего быть последовательным в любом случае.
источник
Вот код состояния, который вы должны знать для своих знаний.
1XX Информационные ответы
2XX Успех
3XX Redirection
Ошибки клиента 4XX
5XX Ошибки сервера
источник
В июне 2014 RFC7231 устарел RFC2616 . Если вы выполняете REST через HTTP, тогда RFC7231 точно описывает поведение, ожидаемое от GET, PUT, POST и DELETE.
источник
Когда ресурс изменяется, код ответа должен быть 200 («ОК») . Если состояние ресурса изменяется таким образом, что URI изменяется на ресурс (например, учетная запись пользователя переименовывается), код ответа - 301 («Перемещено постоянно»), а заголовок Location должен предоставлять новый URI.
Когда объект удаляется, код ответа должен быть 200 («ОК»).
Перейдите по ссылке ниже для получения более подробной информации - код состояния для отдыха
источник