ProxyAgent izveido savienojumu caur tam norādīto endpoint. Vienkāršam HTTP pieprasījumam un starpniekserverim, kas pieņem pamata autentifikāciju, ievietojiet starpniekservera pieteikšanās datus šī pieprasījuma galvenē Proxy-Authorization.

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)

Šis fragments pieņem, ka lietojumprogrammai jau ir savs reactor. Metode, URI un piemērā parādītie galvenes dati izmanto baitus. Glabājiet īstos akreditācijas datus lietojumprogrammas akreditācijas datu avotā; vietturis tikai parāda, kā galvene tiek veidota. Base64 ir kodējums, tāpēc konfidencialitāte ir atkarīga no savienojuma, kas to pārsūta.

Atgrieztais Deferred nodrošina atbildes objektu. Šī objekta saņemšana neapkopo atbildes pamattekstu; lasiet to, izmantojot dokumentēto pamatteksta lasīšanas saskarni, un apstrādājiet asinhronas kļūdas. Endpoint taimauts ierobežo savienojuma izveidi, nevis visu atbildes darbības laiku.

Piemērs apzināti izmanto HTTP galamērķi. Tas nepievieno CONNECT sarunas HTTPS, vienkārši mainot URI shēmu.

Saistītie raksti