417 Expectation Failed ("ожидание не оправдалось")
https://httpcat.ru/417
Это прямая ссылка на изображение со статусом. Вы можете скопировать и использовать её где угодно.

Описание
Код состояния 417 Expectation Failed означает, что сервер не может удовлетворить условия, указанные в заголовке Expect
запроса. Чаще всего это Expect: 100-continue
.
Основные характеристики:
- Используется, если сервер не поддерживает или отказывается выполнять указанные клиентом ожидания
- Наиболее частый случай — отказ от обработки
Expect: 100-continue
, применяемого при отправке больших тел запроса - Сервер может использовать 417 для защиты от нежелательной загрузки (например, фильтровать слишком большие запросы заранее)
Типичное использование:
POST /upload HTTP/1.1 Host: example.com Content-Length: 52428800 Expect: 100-continue HTTP/1.1 417 Expectation Failed Content-Type: application/json { "error": "Server does not support Expect: 100-continue" }
Особенности заголовков:
Expect
— в запросе, указывает ожидание клиента (обычно100-continue
)Content-Length
— показывает, что клиент намерен отправить тело, если сервер подтвердит готовность
Когда использовать:
- Если сервер не поддерживает или не хочет обрабатывать
Expect: 100-continue
- Для фильтрации запроса до получения тела (например, по размеру, авторизации и т.д.)
- При реализации промежуточных серверов (прокси), которые не поддерживают forwarded expectations
Дополнительно:
- Если ожидания могут быть выполнены, сервер должен ответить
100 Continue
, а затем обработать тело запроса - В реальных API 417 встречается редко, но может быть полезен для отказа от "дорогих" или неподдерживаемых ожиданий
- Отличие от 400: 417 связан **не с ошибкой запроса**, а с невозможностью выполнить ожидаемое поведение
Документация: https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/417