Python http.client - В чем разница между запросом и путреквестом? - PullRequest
0 голосов
/ 08 ноября 2019

Документация, объясняющая http.client для Python, которую я нашел, кажется немного скудной. Я хочу использовать его над запросами, потому что запросы не работают для нашего проекта.

Итак, зная, что я использую http.client Python, я снова и снова вижу request и putrequest. Оба метода определены здесь в HTTPConnection.

HTTPConnection.request: запрос будет отправлен на сервер с использованием метода метода HTTP-запроса и URL-адреса селектора.

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

Кроме того, исходный код для обоихопределено в этом файле .

Из моих догадок и прочтения кажется, что request является более высокоуровневым API по сравнению с putrequest. Это правильно?

1 Ответ

0 голосов
/ 12 ноября 2019

Ответ: request () - это абстрагированная версия нескольких функций, одной из них является putrequest ().

Хотя это определено в документации, пропустить это легколиния, которая отвечает на этот вопрос.

Это указано в этой строке документации http.client:

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

...