Se si vuole realizzare in Python un client HTTP/2, si può utilizzare Hyper, un modulo Python facilmente reperibile GitHub ed installabile tramite il comando seguente:
pip install hyper
Il codice sorgente del client, che preleva la pagina d’esempio https://10.211.55.17:3000/index.html, è allegata a questo articolo e disponibile su un apposito repository di GitHub.
Possiamo eseguire il client come segue:
python http2client.py
Il codice risulta essere estremamente sintetico, specie se si usa il framework Requests, come fatto nell’esempio:
import requests
from hyper.contrib import HTTP20Adapter
s = requests.Session()
s.mount('https://10.211.55.17:3000', HTTP20Adapter())
r = s.get('https://10.211.55.17:3000/index.html',verify=False)
Per accedere alla risposta, basta usare una delle seguenti istruzioni:
r.text # risposta testuale
r.content # risposta binaria
r.raw # risposta senza alcuna decodifica
r.json() # risposta JSON