Работа через семантику
GET /library/authors/1/auto-biography
/library/authors/1/auto-biography
- это идентификатор. ресурс сам по себе является понятием, подобным "автобиографии автора 1";обратите внимание, что мы можем говорить о ресурсе, даже если он на самом деле еще не существует.
Ресурс может отображаться на пустой набор, что позволяет делать ссылки на концепцию до ее реализации.существует
В теле ответа HTTP появляется не ресурс, а представление ресурса.
Итак, давайте посмотрим накоды состояния
404
Код состояния 404 (не найден) указывает, что исходный сервер не нашел текущее представление для целевого ресурса или являетсяне желает раскрывать, что он существует.
204
Код состояния 204 (без содержимого) указывает, что сервер успешно выполнил запроси что в теле полезных данных ответа нет дополнительного содержимого для отправки.
Свободная аналогия: предположим, вы пытаетесь получить содержимое файла.404
семантически выровнен с FileNotFound;204
указывает, что длина файла равна нулю.
404
обычно сопровождается «представлением, содержащим объяснение ситуации ошибки и является ли это временным или постоянным условием».Это указывает на то, что клиент пытался использовать ссылку, которая не должна была быть доступной.
204
, с другой стороны, не имеет ничего - представление имеет нулевой байт, как это моглобыть данными.Это особый случай ответа 200
, сообщающего клиенту (и промежуточным компонентам), что тело ответа намеренно оставлено пустым.