Python Glossary English

все Python 3http.clientисключение

http.client.CannotSendHeader

исключения

putheader() вызван не вовремя: до putrequest() или после endheaders(). Потомок ImproperConnectionState.

Синтаксис

except http.client.CannotSendHeader: ...

Встречается только при ручной сборке запроса низкоуровневыми методами putrequest() → putheader() → endheaders() → send(). Заголовки можно добавлять лишь между первыми двумя шагами; после endheaders() они уже ушли на сервер. С обычным request(method, url, headers=...) эта ошибка невозможна. Текст у исключения пустой.

Примеры

import http.client
conn = http.client.HTTPConnection('example.com')
try:
    conn.putheader('Accept', 'text/plain')  # putrequest() ещё не было
except http.client.CannotSendHeader as e:
    print(repr(e))  # → CannotSendHeader()
conn.putrequest('GET', '/')
conn.putheader('Accept', 'text/plain')  # а теперь можно
print('ok')  # → ok

См. также

Открыть в полном глоссарииdocs.python.orgСообщить о неточности