from io import BytesIO
import pycurl

body = BytesIO()
curl = pycurl.Curl()
try:
    curl.setopt(pycurl.URL, "https://api.example/")
    curl.setopt(pycurl.PROXY, "https://proxy.example:8443")
    curl.setopt(pycurl.PROXY_CAINFO, "/path/to/proxy-ca.pem")
    curl.setopt(pycurl.CAINFO, "/path/to/origin-ca.pem")
    curl.setopt(pycurl.CONNECTTIMEOUT, 5)
    curl.setopt(pycurl.TIMEOUT, 30)
    curl.setopt(pycurl.WRITEDATA, body)
    curl.perform()
finally:
    curl.close()

HTTPS प्रॉक्सी समर्थित करणारे PycURL/libcurl बिल्ड वापरा. बंडल मार्ग इच्छित ट्रस्ट संच दर्शवतात: PROXY_CAINFO मध्यस्थाची पडताळणी करते; CAINFO गंतव्याच्या TLS ची पडताळणी करते. विद्यमान ट्रस्ट ते कनेक्शन आधीच व्यापत असल्यास स्पष्ट ओव्हरराइड वगळा.

PROXY मधील URL त्याच्या श्रोत्याचे वर्णन करते. अंकीय PROXYTYPE अंदाजाची गरज नाही. साध्या HTTP श्रोत्यासाठी HTTPS गंतव्य असले तरी URL http:// राहते. त्या बाबतीत HTTP प्रॉक्सी यादी एंडपॉइंट उमेदवार देते; प्रॉक्सी TLS बंडल केवळ तेव्हाच लागू होते जेव्हा श्रोता प्रत्यक्षात TLS वापरतो.

आवश्यक असल्यास PROXYUSERNAME आणि PROXYPASSWORD द्वारे प्रॉक्सी खाते द्या. प्रमाणपत्र पडताळणी टिकवून ठेवा: प्रॉक्सी पडताळणी बंद केल्यास गहाळ प्राधिकरण स्थापित करण्याऐवजी मध्यस्थाची ओळख तपासणी काढून टाकली जाते.

संबंधित लेख