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

Yi amfani da ginin PycURL/libcurl wanda ke goyon bayan proxy na HTTPS. Hanyoyin bundle suna wakiltar tsarin amincewa da ake nufi: PROXY_CAINFO yana tabbatar da mai shiga tsakani; CAINFO yana tabbatar da TLS na manufa. Bar wuce gona da iri a fili lokacin da amincewar da ke akwai ta riga ta rufe wannan haɗin.

URL ɗin da ke cikin PROXY yana bayyana mai sauraronsa. Ba a buƙatar hasashen lamba na PROXYTYPE. Ga mai sauraron HTTP na yau da kullum, URL ɗin yana kasancewa http:// ko da manufa ita ce HTTPS. A wannan yanayin, jerin proxy na HTTP yana bayar da 'yan takarar ƙarshen hanya; bundle ɗin TLS na proxy yana aiki ne kawai lokacin da mai sauraro yake amfani da TLS da gaske.

Bayar da asusun proxy ta hanyar PROXYUSERNAME da PROXYPASSWORD lokacin da ake buƙata. Riƙe tabbatarwar takardar shaida: kashe tabbatarwar proxy yana cire duba ainihin mai shiga tsakani maimakon shigar da hukumar da ta ɓace.

Labarai masu alaƙa