PassFront
  1. PassFront
  2. База знаний
  3. HTTP и HTTPS

Какие HTTP-коды ответа ожидать при создании, обновлении и замене ресурса?

HTTP и HTTPS

Код ответа показывает серверу и клиенту результат операции. Для REST-операций над ресурсами принято использовать следующие.

Создание — POST

  • 201 Created — ресурс создан. В заголовке Location передают адрес нового ресурса, в теле — сам ресурс.
  • 200 OK — допустим, если создание не привело к появлению ресурса с собственным адресом.
  • 202 Accepted — запрос принят, но обработка асинхронная и ещё не завершена.
POST /users
→ 201 Created
Location: /users/42

Полная замена — PUT

  • 200 OK — ресурс заменён, в теле возвращается результат.
  • 204 No Content — заменён, тело пустое.
  • 201 Created — если PUT создал ресурс по указанному адресу.

PUT идемпотентен: повторный запрос даёт тот же результат.

Частичное обновление — PATCH

  • 200 OK с обновлённым ресурсом или 204 No Content без тела.

Ошибки

  • 400 Bad Request — некорректный запрос.
  • 401 / 403 — нет аутентификации / нет прав.
  • 404 Not Found — ресурса нет.
  • 409 Conflict — конфликт состояния (дубликат, устаревшая версия).
  • 422 Unprocessable Entity — данные не прошли валидацию.
  • 500-е — ошибка сервера.

Коротко для собеседования

Создание — 201 Created с Location, замена PUT и обновление PATCH — 200 с телом или 204 без тела. Ошибки клиента — 4xx (400, 404, 409, 422), ошибки сервера — 5xx.

Другие вопросы раздела