все Python 3http.clientисключение
http.client.ImproperConnectionState
исключения
Базовый класс ошибок неправильного порядка вызовов на соединении: CannotSendRequest, CannotSendHeader и ResponseNotReady. Потомок HTTPException.
Синтаксис
except http.client.ImproperConnectionState as e: ...
HTTPConnection — конечный автомат: Idle → запрос начат → запрос отправлен → ответ получен и дочитан → снова Idle. Любой шаг не по порядку даёт потомка этого класса, а текст исключения называет текущее состояние ('Idle', 'Request-started', 'Request-sent'). Чаще всего причина — недочитанный ответ или одно соединение, которое делят несколько потоков: HTTPConnection не потокобезопасен.
Примеры
import http.client
conn = http.client.HTTPConnection('example.com')
try:
conn.getresponse() # запроса ещё не было
except http.client.ImproperConnectionState as e:
print(type(e).__name__, e) # → ResponseNotReady Idle
См. также
Открыть в полном глоссарииdocs.python.orgСообщить о неточности