Twisted ProxyAgent: सादे HTTP के लिए Basic प्रमाणीकरण
बाइट मानों वाले अनुरोध हेडर के साथ Twisted ProxyAgent से प्रमाणित सादा HTTP अनुरोध भेजें।
ProxyAgent उसे दिए गए endpoint से जुड़ता है। सादे HTTP अनुरोध और Basic प्रमाणीकरण स्वीकार करने वाले proxy के लिए, proxy लॉगिन उस अनुरोध के 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)यह अंश मानता है कि एप्लिकेशन के पास पहले से अपना reactor है। विधि, URI और उदाहरण में दिखाया गया हेडर डेटा बाइट का उपयोग करते हैं। असली क्रेडेंशियल एप्लिकेशन के क्रेडेंशियल स्रोत में रखें; प्लेसहोल्डर केवल दिखाता है कि हेडर कैसे बनता है। Base64 एक एन्कोडिंग है, इसलिए गोपनीयता उस कनेक्शन पर निर्भर करती है जो इसे ले जाता है।
लौटाया गया Deferred एक response ऑब्जेक्ट देता है। उस ऑब्जेक्ट को पाना response body को एकत्र नहीं करता; इसे प्रलेखित body-reading इंटरफ़ेस से पढ़ें और अतुल्यकालिक विफलताओं को संभालें। endpoint का टाइमआउट कनेक्शन स्थापित होने को सीमित करता है, पूरे response जीवनकाल को नहीं।
उदाहरण जानबूझकर HTTP गंतव्य का उपयोग करता है। केवल URI स्कीम बदलकर यह HTTPS के लिए CONNECT बातचीत नहीं जोड़ता।