HTML/URL-протоколы обмена данными

/html/common-values/url/protocol:> Протоколы обмена данными_

Схемы и протоколы

bitcoin:
Протокол криптовалюты Биткоин.
data:
Схема позволяющая включать небольшие элементы данных в URL строку.
ed2k://
Протокол файлообменной сети eDonkey.
file://
Ссылка на локальные файлы.
ftp://
Протокол передачи файлов. Ссылка на ftp-сайт или расположенный в нём документ.
gopher://
(от англ. «gopher» ‒ «суслик») протокол распределённого поиска и передачи документов (вытеснен HTTP протоколом).
http://
Протокол передачи произвольных данных.
https://
(от англ. «HyperText Transfer Protocol Secure» ‒ «Шифруемый Протокол Передачи ГиперТекста») стандартный HTTP протокол использующий шифрование (как правило, SSL или TLS).
irc://
(от англ. «Internet Relay Chat» ‒ «Ретранслирующий Интернет Чат») протокол прикладного уровня для обмена сообщениями в режиме реального времени.
mailserver
Доступ к данным с почтовых серверов.
mailto:
Указывает адрес электронной почты. При активации такой ссылки браузер запускает почтовый клиент для написания письма по указанному в ссылке адресу.
market://
Протокол Android Маркета.
news:
Новости Usenet.
nfs
Имя файла в сетевой файловой системе NFS.
nntp://
Новости Usenet через протокол NNTP.
prospero
Служба каталогов Prospero Directory Service.
rtmp://
(от англ. «Real Time Messaging Protocol» ‒ «Протокол обмена Сообщениями в режиме Реального Времени») проприетарный протокол потоковой передачи данных (используется для передачи через интернет потокового видео и аудиопотоков с веб-камер).
rtsp://
(от англ. «Real Time Streaming Protocol» ‒ «Потоковый Протокол Реального Времени») Потоковый протокол реального времени (позволяет клиенту удалённо управлять потоком мультимедиа данных с сервера).
skype:
Указывает название учетной записи или телефонный номер. При активации такой ссылки браузер запускает Skype для осуществления звонка указанному в ссылке абоненту или по указанному номеру.
sms:
Открытие редактора SMS (работает только в некоторых мобильных телефонах).
smsto:
Открытие редактора SMS (работает только в некоторых мобильных телефонах).
steam://
Протокол Steam.
tel:
Указывает телефонный номер. При активации такой ссылки браузер запускает программу осуществляющую телефонные звонки.
telnet://
Ссылка на интерактивную сессию Telnet.
wais://
(от англ. «Wide Area Information Servers» ‒ «Широкие Области Информационных Серверов») ссылка на базу данных системы WAIS.
xmpp://
(от англ. «Extensible Messaging and Presence Protocol» ‒ «расширяемый Протокол Обмена Сообщениями и информацией о Присутствии») открытый, основанный на XML, свободный для использования протокол для мгновенного обмена сообщениями и информацией о присутствии.

Схемы браузеров

about:
Служебные страницы некоторых браузеров (Chrome, Firefox, Opera, Maxthon).
chrome://
Служебные страницы браузера Google Chrome или браузеров использующих движок Gecko.
opera://
Служебные страницы браузера Opera.
view-source:
Просмотр исходного кода указанной web-страницы (указывается вместе с протоколом страницы.

Псевдопротокол

javascript:
Выполняет скрипт указанный после псевдопротокола.

HTML/URL-протокол «http://»

Синтаксис

http://<хост>:<порт>/<путь-к-файлу>?<параметры>#<якорь>

Описание

URL-протокол http:// (от англ. «HyperText Transfer Protocol» ‒ «Протокол Передачи ГиперТекста») протокол прикладного уровня используемый для передачи данных.


Поддержка браузерами

Chrome

Поддерж.

Firefox

Поддерж.

Opera

Поддерж.

Maxthon

Поддерж.

IExplorer

Поддерж.

Safari

Поддерж.

iOS

Поддерж.

Android

Поддерж.


Спецификация

RFCНазвание
1945Hypertext Transfer Protocol — HTTP/1.0
2068Hypertext Transfer Protocol — HTTP/1. 1
2616Hypertext Transfer Protocol — HTTP/1.1
7230Hypertext Transfer Protocol (HTTP/1.1): Message Syntax and Routing
7231Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content
7232Hypertext Transfer Protocol (HTTP/1.1): Conditional Requests
7233Hypertext Transfer Protocol (HTTP/1.1): Range Requests
7234Hypertext Transfer Protocol (HTTP/1.1): Caching
7235Hypertext Transfer Protocol (HTTP/1.1): Authentication
7236Initial Hypertext Transfer Protocol (HTTP)
Authentication Scheme Registrations
7237Initial Hypertext Transfer Protocol (HTTP) Method Registrations
7238The Hypertext Transfer Protocol Status Code 308 (Permanent Redirect)
7538The Hypertext Transfer Protocol Status Code 308 (Permanent Redirect)
7540Hypertext Transfer Protocol Version 2 (HTTP/2)
7694Hypertext Transfer Protocol (HTTP) Client-Initiated Content-Encoding


URL-составляющие

<хост>
Указывается доменное имя или IP-адрес хоста.
http://5.101.153.60/
http://example.com/
<порт>
Указывается порт хоста. Для обычной передачи данных большинство серверов используют порт «80», а для защищённой передачи данных порт «443».

http://example.ru:80

<путь-к-файлу>
Указывается путь к файлу (ресурсу). Путь состоит из названий каталогов и названия файла. Если название каталога начинается с символа «
~
» ТИЛЬДА [U+007E], то такой каталог является персональным каталогом и принадлежит определённому пользователю (например, http://example.su/~serj/]. Каталогов в пути может и вовсе не быть, если запрашиваемый файл расположен в корневой директории сервера/сайта (например, http://example.su/index.php). Название файла так же может не указываться, если сервер на котором расположен сайт использует программное обеспечение (например, apache), которое имеет функцию/директиву возврата документа (в apache это директива DirectoryIndex файла httpd.
conf расположенного в папке conf) с определённым именем, в случае если не указано название запрашиваемого документа [DirectoryIndex index.php index.html].
http://programmerbook.ru/html/a/href/http/
http://programmerbook.ru/html/a/href/http/index.php
<параметры>
Параметры передаваемые (GET методом) на сервер обрабатывающему файлу. В качестве разделителей параметров указывается знак «&» АМПЕРСАНД [U+0026].

http://example.su?text=tag%20a или http://example.su?val1=true&amp;val3=true

<якорь> (имя указателя)
Обозначает определённую часть или какой-либо отрывок документа, к которому необходимо перейти. (Якоря в (X)HTML документе создаются с помощью параметра «name» или глобального параметра «id».)

http://example.su/path/index.html#anchor

Протокол области HTML DOM Свойство

❮ Объект области

Пример

Возвращает протокол URL для определенной области в карта-изображение:

переменная х = document. getElementById(«Венера»).protocol;

Попробуйте сами »


Определение и использование

Свойство протокола задает или возвращает протокольную часть значения атрибута href.

Атрибут href указывает назначение ссылки в области.

Протокол — это стандарт, определяющий способ передачи данных между компьютеры.


Поддержка браузера

Свойство
протокол Да Да Да Да Да


Синтаксис

Возврат свойство портокола:

Preaitobject . Protocol

Установите свойство протокола:

0057 .protocol = протокол

Значения свойств

Значение Описание
протокол Протокол URL. Возможные значения:
  • файл:
  • фтп:
  • http:
  • https:
  • почта:
  • и т.д..

Технические детали

Возвращаемое значение: Строка, представляющая протокольную часть URL-адреса, включая знак двоеточия (:)

Дополнительные примеры

Пример

Изменить протокольную часть определенной области на карте-изображении:

document.getElementById(«venus»).protocol = «mailto:»;

Попробуйте сами.

ВЫБОР ЦВЕТА



Лучшие учебники
Учебник по HTML
Учебник по CSS
Учебник по JavaScript
Учебник How To
Учебник по SQL
Учебник по Python
Учебник по W3.CSS
Учебник по Bootstrap
Учебник по PHP
Учебник по Java
Учебник по C++
Учебник по jQuery
9000 3

Основные каталожные номера
Справочник по HTML
Справочник по CSS
Справочник по JavaScript
Справочник по SQL
Справочник по Python
Справочник по W3. CSS
Справочник по Bootstrap
Справочник по PHP
Цвета HTML
Справочник по Java
Справочник по Angular
Справочник по jQuery

Основные примеры
Примеры HTML
Примеры CSS
Примеры JavaScript
Примеры инструкций
Примеры SQL
Примеры Python
Примеры W3.CSS
Примеры Bootstrap
Примеры PHP
Примеры Java
Примеры XML
Примеры jQuery


ФОРУМ | О

W3Schools оптимизирован для обучения и обучения. Примеры могут быть упрощены для улучшения чтения и обучения. Учебники, ссылки и примеры постоянно пересматриваются, чтобы избежать ошибок, но мы не можем гарантировать полную правильность всего содержания. Используя W3Schools, вы соглашаетесь прочитать и принять наши условия использования, куки-файлы и политика конфиденциальности.

Copyright 1999-2023 Refsnes Data. Все права защищены.
W3Schools работает на основе W3.CSS.

http.client — клиент протокола HTTP — документация Python 3.11.3

Исходный код: Lib/http/client.py


Этот модуль определяет классы, которые реализуют клиентскую сторону HTTP и протоколы HTTPS. Обычно не используется напрямую — модуль urllib.request использует его для обработки URL-адресов, использующих HTTP и HTTPS.

См. также

Пакет запросов рекомендуется для клиентского интерфейса HTTP более высокого уровня.

Примечание

Поддержка HTTPS доступна только в том случае, если Python был скомпилирован с поддержкой SSL (через модуль ssl ).

Наличие: не Emscripten, не WASI.

Этот модуль не работает или недоступен на платформах WebAssembly wasm32-emscripten и wasm32-wasi . Видеть Платформы WebAssembly для получения дополнительной информации.

Модуль предоставляет следующие классы:

class http.client. HTTPConnection( host , port=None , [ timeout ,] source_address=None , blocksize=8192 ) 9023 5

Экземпляр HTTPConnection представляет одну транзакцию с сервер. Его следует создать, передав ему хост и необязательный порт. число. Если номер порта не передан, порт извлекается из хоста. строка, если она имеет вид host:port , иначе порт HTTP по умолчанию (80) использовал. Если задан необязательный параметр timeout , блокировка операции (например, попытки подключения) прекратятся по истечении этого количества секунд (если он не указан, используется глобальная настройка времени ожидания по умолчанию). Необязательный параметр source_address может быть кортежем (хост, порт) для использования в качестве исходного адреса, с которого выполняется HTTP-соединение. Необязательный параметр blocksize устанавливает размер буфера в байтах для отправка тела сообщения в виде файла.

Например, следующие вызовы создают все экземпляры, которые подключаются к серверу. на том же хосте и порте:

 >>> h2 = http.client.HTTPConnection('www.python.org')
>>> h3 = http.client.HTTPConnection('www.python.org:80')
>>> h4 = http.client.HTTPConnection('www.python.org', 80)
>>> h5 = http.client.HTTPConnection('www.python.org', 80, timeout=10)
 

Изменено в версии 3.2: добавлен source_address .

Изменено в версии 3.4: параметр strict удален. «Простые ответы» в стиле HTTP 0.9 больше не поддерживается.

Изменено в версии 3.7: Добавлен параметр blocksize .

class http.client.HTTPSConnection( host , port=None , key_file=None , cert_file=None , [ timeout ,] 900 56 source_address=Нет , * , контекст= Нет , check_hostname=Нет , размер блока=8192 )

Подкласс HTTPConnection , который использует SSL для связи с защищенные серверы. Порт по умолчанию — 443 . Если указан контекст , он должен быть экземпляром ssl.SSLContext , описывающим различные SSL параметры.

Дополнительные сведения о передовом опыте см. в разделе Вопросы безопасности.

Изменено в версии 3.2: source_address , контекст и 9Добавлено 0056 check_hostname .

Изменено в версии 3.2: этот класс теперь по возможности поддерживает виртуальные хосты HTTPS (т. е. если ssl.HAS_SNI верно).

Изменено в версии 3.4: Параметр strict удален. «Простые ответы» в стиле HTTP 0.9 больше не поддерживается.

Изменено в версии 3.4.3: теперь этот класс выполняет все необходимые проверки сертификатов и имен хостов. по умолчанию. Чтобы вернуться к предыдущему, непроверенному поведению ssl._create_unverified_context() может быть передан в контекст параметр.

Изменено в версии 3.8: этот класс теперь включает TLS 1.3. ssl.SSLContext.post_handshake_auth для контекста по умолчанию или когда cert_file передается с пользовательским контекстом .

Изменено в версии 3.10: этот класс теперь отправляет расширение ALPN с индикатором протокола. http/1.1 , если не указан контекст . Пользовательский контекст должен установить Протоколы ALPN с set_alpn_protocol() .

Устарело, начиная с версии 3.6: key_file и cert_file устарели в пользу context . Вместо этого используйте ssl.SSLContext.load_cert_chain() или позвольте ssl.create_default_context() выберите доверенный ЦС системы сертификаты для вас.

Параметр check_hostname также устарел; в ssl.SSLContext.check_hostname атрибут контекста должен использоваться вместо этого.

класс http.client.HTTPResponse ( носок , уровень отладки = 0 , метод = нет , url = нет )

Класс, экземпляры которого возвращаются при успешном соединении. Нет создается непосредственно пользователем.

Изменено в версии 3.4: Параметр strict удален. «Простые ответы» в стиле HTTP 0.9 больше не поддерживается.

Этот модуль выполняет следующие функции:

Разобрать заголовки из указателя файла fp , представляющего HTTP ответ на запрос. Файл должен быть считывателем BufferedIOBase . (т. е. не текст) и должен содержать действительный заголовок в стиле RFC 2822 .

Эта функция возвращает экземпляр http.client.HTTPMessage который содержит поля заголовка, но не содержит полезной нагрузки (аналогично HTTPResponse.msg и http.server.BaseHTTPRequestHandler.headers ). После возврата указатель файла fp готов к чтению тела HTTP.

Примечание

parse_headers() не анализирует начальную строку HTTP-сообщения; он анализирует только строки Name: value . Файл должен быть готов к прочитайте эти строки поля, поэтому первая строка уже должна быть использована перед вызовом функции.

При необходимости возникают следующие исключения:

исключение http.client.HTTPException

Базовый класс других исключений в этом модуле. Это подкласс Исключение .

исключение http.client.NotConnected

Подкласс HTTPException .

исключение http.client.InvalidURL

Подкласс HTTPException , возникает, если указан порт и либо нечисловое или пустое.

исключение http.client.UnknownProtocol

Подкласс HTTPException .

исключение http.client.UnknownTransferEncoding

Подкласс HTTPException .

исключение http.client.UnimplementedFileMode

Подкласс HTTPException .

исключение http. client.IncompleteRead

Подкласс HTTPException .

исключение http.client.ImproperConnectionState

Подкласс HTTPException .

исключение http.client.CannotSendRequest

Подкласс ImproperConnectionState .

Подкласс ImproperConnectionState .

исключение http.client.ResponseNotReady

Подкласс ImproperConnectionState .

исключение http.client.BadStatusLine

Подкласс HTTPException . Возникает, если сервер отвечает HTTP код состояния, который мы не понимаем.

исключение http.client.LineTooLong

Подкласс HTTPException . Поднимается, если линия слишком длинная принимается по протоколу HTTP от сервера.

исключение http.client.RemoteDisconnected

Подкласс ConnectionResetError и BadStatusLine . Поднятый по HTTPConnection.getresponse() при попытке прочитать ответ приводит к тому, что данные не считываются из соединения, что указывает на то, что удаленный конец закрыл соединение.

Новое в версии 3.5: Ранее поднимался BadStatusLine ('') .

Константы, определенные в этом модуле:

http.client.HTTP_PORT

Порт по умолчанию для протокола HTTP (всегда 80 ).

http.client.HTTPS_PORT

Порт по умолчанию для протокола HTTPS (всегда 443 ).

http.client.ответы

Этот словарь сопоставляет коды состояния HTTP 1.1 с именами W3C.

Пример: http.client.responses[http.client.NOT_FOUND] равно 'Не найдено' .

См. коды состояния HTTP для получения списка кодов состояния HTTP, которые доступны в этом модуле как константы.

Объекты HTTPConnection

Экземпляры HTTPConnection имеют следующие методы:

HTTPConnection.request( метод , url , body=None , headers={} , * , encode_chunked=False )

Будет отправлен запрос на сервер с использованием HTTP-запроса. метод метод и URI запроса url . Предоставленный URL должен быть абсолютный путь для соответствия RFC 2616 §5.1.2 (если только вы не подключитесь к прокси-серверу HTTP или не используете ОПЦИИ или CONNECT методов).

Если указано тело , указанные данные отправляются после того, как заголовки законченный. Это может быть str , байтовый объект, объект открытого файла или итерируемый объект размером байт . Если корпус это строка, она закодирована как ISO-8859-1, по умолчанию для HTTP. Если оно является байтоподобным объектом, байты отправляются как есть. Если это файл объект, содержимое файла отправляется; этот файловый объект должен поддерживать как минимум метод read() . Если файловый объект является экземпляр io.TextIOBase , данные, возвращенные read() метод будет закодирован как ISO-8859-1, в противном случае данные, возвращаемые read() отправляется как есть. Если body является итерируемым, элементы iterable отправляются как есть, пока iterable не будет исчерпан.

Аргумент заголовков должен быть сопоставлением дополнительных заголовков HTTP для отправки с запросом. Заголовок хоста должен быть предоставлен для соответствия RFC 2616 §5.1.2 (если только вы не подключитесь к прокси-серверу HTTP или не используете ОПЦИИ или CONNECT методов).

Если заголовки не содержат ни Content-Length, ни Transfer-Encoding, но есть тело запроса, одно из тех поля заголовка будут добавлены автоматически. Если тело равно None , заголовок Content-Length имеет значение 0 для методы, которые ожидают тело ( PUT , POST и PATCH ). Если body — это строка или байтовый объект, который также не является файл, заголовок Content-Length установить на его длину. Любой другой тип тело (файлы и итерации в целом) будут закодированы фрагментами, а Заголовок Transfer-Encoding будет автоматически установлен вместо Содержание-длина.

Аргумент encode_chunked имеет значение только в том случае, если Transfer-Encoding указано в заголовках . Если encode_chunked равно False , Объект HTTPConnection предполагает, что все кодирование обрабатывается код вызова. Если это True , тело будет кодировано фрагментами.

Например, для выполнения запроса GET к https://docs.python.org/3/ :

 >>> импортировать http.client
>>> хост = "docs.python.org"
>>> соединение = http.client.HTTPSConnection(хост)
>>> conn.request("GET", "/3/", headers={"Host": host})
>>> ответ = conn.getresponse()
>>> print(ответ.статус, ответ.причина)
200 ОК
 

Примечание

В протокол HTTP добавлено кодирование передачи по частям. версия 1.1. Если HTTP-сервер не поддерживает HTTP 1.1, вызывающий должен либо указать Content-Length, либо передать str или байтоподобный объект, который также не является файлом, поскольку представление тела.

Новое в версии 3.2: тело теперь может быть итерируемым.

Изменено в версии 3.6: Если ни Content-Length, ни Transfer-Encoding не установлены в заголовки , файлы и итерируемые тела объекты теперь кодируются фрагментами. Добавлен аргумент encode_chunked . Не предпринимается никаких попыток определить Content-Length для файла объекты.

HTTPConnection.getresponse()

Следует вызывать после отправки запроса на получение ответа от сервера. Возвращает экземпляр HTTPResponse .

Примечание

Обратите внимание, что вы должны прочитать весь ответ, прежде чем отправлять новый запрос к серверу.

Изменено в версии 3.5: если возникает ConnectionError или подкласс, Объект HTTPConnection будет готов к повторному подключению, когда отправляется новый запрос.

HTTPConnection.set_debuglevel( уровень )

Установите уровень отладки. Уровень отладки по умолчанию — 0 , что означает отсутствие вывод отладки распечатывается. Любое значение больше 0 вызовет все определенный текущий отладочный вывод для вывода на стандартный вывод. Уровень отладки передается любым новым создаваемым объектам HTTPResponse .

Новое в версии 3. 1.

HTTPConnection.set_tunnel( хост , порт = нет , заголовки = нет )

Установите хост и порт для туннелирования HTTP Connect. Это позволяет запускать соединение через прокси-сервер.

Аргументы узла и порта указывают конечную точку туннелируемого соединения. (т. е. адрес, включенный в запрос CONNECT, , а не адрес Прокси сервер).

Аргумент заголовков должен быть сопоставлением дополнительных заголовков HTTP для отправки с запрос СОЕДИНЕНИЕ.

Например, для туннелирования через прокси-сервер HTTPS, работающий локально на порту 8080, мы бы передали адрес прокси в HTTPSConnection конструктор, и адрес хоста, до которого мы в конечном итоге хотим добраться метод set_tunnel() :

 >>> импортировать http.client
>>> conn = http.client.HTTPSConnection("localhost", 8080)
>>> conn.set_tunnel("www.python.org")
>>> conn.request("HEAD","/index.html")
 

Новое в версии 3. 2.

HTTPConnection.connect()

Подключиться к серверу, указанному при создании объекта. По умолчанию, это вызывается автоматически при выполнении запроса, если клиент не уже есть связь.

Инициирует событие аудита http.client.connect с аргументами self , host , port .

HTTPConnection.close()

Закройте соединение с сервером.

HTTPConnection.blocksize

Размер буфера в байтах для отправки тела сообщения в виде файла.

Новое в версии 3.7.

В качестве альтернативы описанному выше методу request() вы можете также отправьте свой запрос шаг за шагом, используя четыре функции ниже.

HTTPConnection.putrequest(метод , URL-адрес , skip_host = False , skip_accept_encoding = Ложь )

Это должен быть первый вызов после установления соединения с сервером. сделал. Он отправляет на сервер строку, состоящую из строки method , строка url и версия HTTP ( HTTP/1.1 ). Чтобы отключить автоматический отправка заголовков Host: или Accept-Encoding: (например, чтобы принять дополнительные кодировки контента), укажите skip_host или skip_accept_encoding с неложными значениями.

Отправьте на сервер заголовок в стиле RFC 822 . Он отправляет строку на сервер состоящий из заголовка, двоеточия и пробела, а также первого аргумента. Если больше задаются аргументы, отправляются строки продолжения, каждая из которых состоит из табуляции и Аргумент.

Отправить на сервер пустую строку, сигнализирующую об окончании заголовков. необязательный аргумент message_body может использоваться для передачи тела сообщения связанные с запросом.

Если encode_chunked равно True , результат каждой итерации message_body будет кодироваться фрагментами, как указано в RFC 7230 , Раздел 3. 3.1. Способ кодирования данных зависит от типа тело_сообщения . Если message_body реализует интерфейс буфера, кодирование приведет к созданию одного фрагмента. Если message_body является collections.abc.Iterable , каждая итерация из message_body приведет к куску. Если message_body является файловый объект, каждый вызов .read() приведет к фрагменту. Метод автоматически сигнализирует об окончании закодированных данных. сразу после message_body .

Примечание

Из-за спецификации кодирования фрагментами пустые фрагменты полученный телом итератора, будет игнорироваться кодировщиком фрагментов. Это делается для того, чтобы избежать преждевременного прекращения чтения запроса целевой сервер из-за неправильной кодировки.

Новое в версии 3.6: поддержка фрагментированного кодирования. Параметр encode_chunked был добавлен.

HTTPConnection.send( данные )

Отправить данные на сервер. Это следует использовать непосредственно только после метод endheaders() был вызван и до getresponse() называется.

Инициирует событие аудита http.client.send с аргументами self , data .

Объекты ответа HTTP

Экземпляр HTTPResponse упаковывает ответ HTTP от сервер. Он обеспечивает доступ к заголовкам запроса и сущности тело. Ответ представляет собой итерируемый объект и может использоваться в with заявление.

Изменено в версии 3.5: интерфейс io.BufferedIOBase теперь реализован и поддерживаются все его операции чтения.

HTTPResponse.read([ до ])

Читает и возвращает тело ответа или до следующих до байт.

HTTPResponse.readinto ( б )

Считывает до следующих len(b) байтов тела ответа в буфер b . Возвращает количество прочитанных байтов.

Новое в версии 3.3.

Вернуть значение заголовка имя или по умолчанию если заголовка нет соответствие имени . Если имеется более одного заголовка с именем name , вернуть все значения, соединенные ‘, ‘. Если по умолчанию является любым итерируемым другим чем одна строка, ее элементы также возвращаются, соединяясь запятыми.

Возвращает список кортежей (заголовок, значение).

HTTPResponse.fileno()

Вернуть файл № базового сокета.

HTTPResponse.msg

Экземпляр http.client.HTTPMessage , содержащий ответ заголовки. http.client.HTTPMessage является подклассом электронная почта.сообщение.Сообщение .

HTTPResponse.версия

Версия протокола HTTP, используемая сервером. 10 для HTTP/1.0, 11 для HTTP/1. 1.

HTTPResponse.url

URL-адрес извлеченного ресурса, обычно используемый для определения того, было ли выполнено перенаправление.

Заголовки ответа в виде экземпляра email.message.EmailMessage .

HTTPResponse.статус

Код состояния, возвращенный сервером.

HTTPResponse.причина

Фраза причины, возвращенная сервером.

HTTPResponse.debuglevel

Крюк отладки. Если уровень отладки больше нуля, сообщения будет выведен на стандартный вывод по мере чтения и анализа ответа.

HTTPResponse.closed

Является Истинным , если поток закрыт.

HTTPResponse.geturl()

Устарело, начиная с версии 3.9: Устарело в пользу url .

HTTPResponse.info()

Устарело, начиная с версии 3. 9: Устарело в пользу заголовков .

HTTPResponse.getcode()

Устарело, начиная с версии 3.9: Устарело в пользу статуса .

Примеры

Вот пример сеанса, в котором используется метод GET :

 >>> импортировать http.client
>>> соединение = http.client.HTTPSConnection("www.python.org")
>>> conn.request("GET", "/")
>>> r1 = conn.getresponse()
>>> print(r1.статус, r1.причина)
200 ОК
>>> data1 = r1.read() # Это вернет все содержимое.
>>> # Следующий пример демонстрирует чтение данных порциями.
>>> conn.request("GET", "/")
>>> r1 = conn.getresponse()
>>> в то время как чанк := r1.read(200):
... печать (репр (фрагмент))
b'\n