У меня есть URL-адрес, который отвечает только на запросы http2.
Когда я хочу отправить запрос http/2 с помощью Python на URL-адрес, я получаю сообщение ниже ERROR:
h2.exceptions.ProtocolError: Received duplicate pseudo-header field b':path'
Мой Code:
from hyper.contrib import HTTP20Adapter
import requests
MyHeader = {
"User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36",
"X-Requested-With": "XMLHttpRequest"
}
adapter = HTTP20Adapter(headers=MyHeader)
sessions=requests.session()
sessions.mount(prefix='https://myurl.com', adapter=adapter)
r=sessions.get('Continue_My_Url_response')
print(r)
Я использую слишком много requests библиотек для HTTP/1 и впервые хочу работать с HTTP/2.
У кого-нибудь есть идея и пример отправки этого запроса HTTP/2?






Используйте httpx с включенной поддержкой http/2: httpx.Client(http2=True).
Спасибо @jerion5562:
Я использую приведенный ниже код и работал:
Первое: установите библиотеку pip install httpx[http2]
import httpx
client = httpx.Client(http2=True)
response = client.get(My_Url,headers=MyHeader)
print(response.http_version) # HTTP/2
print(response.status_code) # 200