Twisted ProxyAgent: adi HTTP üçün Basic autentifikasiya
Bayt dəyərli sorğu başlıqları ilə Twisted ProxyAgent vasitəsilə autentifikasiya edilmiş adi HTTP sorğusu göndərin.
ProxyAgent özünə verilən endpoint vasitəsilə qoşulur. Adi HTTP sorğusu və Basic autentifikasiyanı qəbul edən proxy üçün proxy girişini həmin sorğunun Proxy-Authorization başlığına qoyun.
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)Bu fraqment tətbiqin artıq öz reactoruna sahib olduğunu fərz edir. Metod, URI və nümunədə göstərilən başlıq məlumatları baytlardan istifadə edir. Həqiqi etimad məlumatlarını tətbiqin etimad mənbəyində saxlayın; yer tutucu yalnız başlığın necə qurulduğunu göstərir. Base64 bir kodlaşdırmadır, ona görə məxfilik onu daşıyan bağlantıdan asılıdır.
Qaytarılan Deferred cavab obyekti verir. Bu obyekti qəbul etmək cavab gövdəsini toplamır; sənədləşdirilmiş gövdə oxuma interfeysi ilə onu oxuyun və asinxron xətaları idarə edin. Endpoint taym-autu bağlantının qurulmasını məhdudlaşdırır, cavabın tam ömrünü deyil.
Nümunə qəsdən HTTP hədəfindən istifadə edir. Yalnız URI sxemini dəyişməklə HTTPS üçün CONNECT danışığı əlavə etmir.