ProxyAgent hari ematen zaion endpointaren bidez konektatzen da. HTTP eskaera arrunt bat eta Basic autentifikazioa onartzen duen proxy batentzat, jarri proxyaren saio-hasiera eskaera horren Proxy-Authorization buruan.

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)

Zati honek suposatzen du aplikazioak baduela bere reactor-a. Metodoak, URIak eta erakutsitako buru-datuek byteak erabiltzen dituzte. Gorde benetako kredentzialak aplikazioaren kredentzialen iturrian; leku-markak soilik erakusten du nola eraikitzen den burua. Base64 kodeketa bat da, beraz konfidentzialtasuna garraiatzen duen konexioaren mende dago.

Itzulitako Deferred-ek erantzun-objektu bat ematen du. Objektu hori jasotzeak ez du erantzun-gorputza biltzen; irakurri gorputza irakurtzeko interfaze dokumentatuaren bidez eta kudeatu hutsegite asinkronoak. Endpointaren denbora-mugak konexioaren ezarpena mugatzen du, ez erantzunaren bizitza osoa.

Adibideak HTTP helmuga erabiltzen du nahita. Ez dio HTTPSrako CONNECT negoziaziorik gehitzen URIaren eskema aldatuta soilik.

Erlazionatutako artikuluak