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

Izmantojiet PycURL/libcurl būvējumu, kas atbalsta HTTPS starpniekserverus. Kopu ceļi apzīmē paredzētās uzticības kopas: PROXY_CAINFO pārbauda starpnieku; CAINFO pārbauda galamērķa TLS. Izlaidiet skaidru aizstāšanu, ja esošā uzticība jau aptver šo savienojumu.

URL laukā PROXY apraksta tā klausītāju. Skaitlisks PROXYTYPE minējums nav vajadzīgs. Vienkāršam HTTP klausītājam URL paliek http:// arī ar HTTPS galamērķi. Tādā gadījumā HTTP starpniekserveru saraksts nodrošina galapunktu kandidātus; starpniekservera TLS kopa attiecas tikai tad, ja klausītājs patiešām izmanto TLS.

Ja nepieciešams, norādiet starpniekservera kontu ar PROXYUSERNAME un PROXYPASSWORD. Saglabājiet sertifikātu pārbaudi: starpniekservera pārbaudes izslēgšana noņem starpnieka identitātes pārbaudi, nevis instalē trūkstošo autoritāti.

Saistītie raksti