598 Network read timeout error ("ошибка тайм-аута сетевого чтения")
https://httpcat.ru/598
Это прямая ссылка на изображение со статусом. Вы можете скопировать и использовать её где угодно.

Описание
Код состояния 598 Network Read Timeout Error — неофициальный HTTP-статус, используемый клиентскими библиотеками (например, Python Requests, curl, ElasticSearch, Tornado) для обозначения того, что сервер начал отправку ответа, но не завершил его вовремя.
Основные характеристики:
- 598 — это внутренний клиентский статус, не предусмотренный в стандарте HTTP
- Отличается от
599
: тот означает таймаут при установлении соединения, а598
— таймаут при чтении тела ответа - Может быть вызван медленной отдачей данных сервером, зависанием backend-приложения или нестабильным соединением
Пример использования (на клиенте):
GET /api/report HTTP/1.1 Host: example.com # Клиент начинает получать тело ответа, но чтение не завершается вовремя HTTP/1.1 598 Network Read Timeout Error Content-Type: application/json { "error": "Timeout while reading response from server" }
Когда возникает:
- Сервер начал отдавать ответ, но завершение чтения произошло позже лимита, заданного клиентом
- При потоковой передаче, когда часть данных получена, но чтение зависло
- На медленных соединениях или при больших объёмах данных
Особенности заголовков:
- Обычно сгенерирован клиентом — может вообще не содержать HTTP-заголовков сервера
- Может сопровождаться логами/исключениями в клиентском коде
Дополнительно:
- 598 не является официальным статусом HTTP — это инструмент для отладки в HTTP-клиентах
- В системах вроде ElasticSearch, Tornado, Scrapy он может фиксироваться в логах при сбоях чтения
- Официального аналога нет — можно заменить на
504 Gateway Timeout
(на сервере) или вернуть408 Request Timeout
при чтении тела
Документация: https://http.dev/598