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()

Isticmaal nooc PycURL/libcurl ah oo taageera proxy-yada HTTPS. Wadooyinka xirmooyinku waxay tilmaamayaan xirmooyinka kalsoonida ee la doonayo: PROXY_CAINFO wuxuu xaqiijiyaa dhexdhexaadiyaha; CAINFO wuxuu xaqiijiyaa TLS-ka meesha loo socdo. Ka tag beddelka cad marka kalsoonida jirta ay hore u daboolto xiriirkaas.

URL-ka ku jira PROXY wuxuu qeexayaa dhageysihiisa. Ma loo baahna qiyaas tiro PROXYTYPE. Dhageyste HTTP caadi ah, URL-ku wuxuu ahaanayaa http:// xitaa haddii meesha loo socdo ay HTTPS tahay. Xaaladdaas, liiska proxy-yada HTTP wuxuu bixiyaa musharraxiin dhammaadka; xirmada TLS ee proxy-ga waxay khusaysaa oo kaliya marka dhageystuhu runtii isticmaalo TLS.

Bixi akoon proxy iyada oo loo marayo PROXYUSERNAME iyo PROXYPASSWORD marka loo baahdo. Hayso xaqiijinta shahaadada: daminta xaqiijinta proxy-ga waxay meesha ka saaraysaa hubinta aqoonsiga dhexdhexaadiyaha halkii ay rakibi lahayd hay'adda maqan.

Maqaallo la xiriira