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 வழியாக ப்ராக்ஸி கணக்கை வழங்கவும். சான்றிதழ் சரிபார்ப்பைத் தக்கவைக்கவும்: ப்ராக்ஸி சரிபார்ப்பை முடக்குவது இல்லாத அதிகாரத்தை நிறுவுவதற்குப் பதிலாக இடைநிலையின் அடையாளச் சரிபார்ப்பை நீக்குகிறது.

தொடர்புடைய கட்டுரைகள்