Twisted ProxyAgent: ukuqinisekisa okuyisisekelo kwe-HTTP evamile
Thumela isicelo se-HTTP esivamile esiqinisekisiwe nge-Twisted ProxyAgent namakhanda esicelo anamanani e-byte.
I-ProxyAgent ixhuma nge-endpoint enikeziwe. Ngesicelo se-HTTP esivamile kanye ne-proxy eyamukela ukuqinisekisa okuyisisekelo, beka ukungena kwe-proxy kukhanda le-Proxy-Authorization lesicelo.
import base64
from twisted.internet.endpoints import TCP4ClientEndpoint
from twisted.web.client import ProxyAgent
from twisted.web.http_headers import Headers
endpoint = TCP4ClientEndpoint(reactor, 'proxy.example', 8080,
timeout=5)
agent = ProxyAgent(endpoint, reactor=reactor)
token = base64.b64encode(b'alice:REPLACE_WITH_PROXY_PASSWORD')
headers = Headers({b'Proxy-Authorization': [b'Basic ' + token]})
pending = agent.request(b'GET', b'http://example.com/', headers)Le ngxenye icabanga ukuthi uhlelo lune-reactor yalo kakade. Indlela, i-URI kanye nedatha yekhanda ekhonjisiwe zisebenzisa i-byte. Gcina imininingwane yangempela yokungena emthonjeni wemininingwane yokungena wohlelo; isibambi sikhombisa kuphela ukuthi ikhanda lakhiwa kanjani. I-Base64 iwukufaka ikhodi, ngakho imfihlo incike ekuxhumekeni okuthwalayo.
I-Deferred ebuyisiwe inikeza into yokuphendula. Ukuthola leyo nto akukuqoqi umzimba wokuphendula; kufunde ngokusebenzisa isixhumi esibhalisiwe sokufunda umzimba futhi usingathe ukwehluleka okungahambisani nesikhathi. Isikhathi se-endpoint sikhawulela ukusungulwa kokuxhumana, hhayi impilo yonke yempendulo.
Isibonelo sisebenzisa ngamabomu indawo yokufika ye-HTTP. Asingezi izingxoxo ze-CONNECT ze-HTTPS ngokushintsha uhlelo lwe-URI kuphela.