PycURL-ში პროქსისა და წყაროს CA პაკეტები ცალ-ცალკე დააყენეთ
შუამავალთან TLS-ისთვის გამოიყენეთ https პროქსის URL, PROXY_CAINFO ამ მხარისთვის და CAINFO დანიშნულებისთვის.
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()გამოიყენეთ PycURL/libcurl-ის ის აწყობა, რომელიც HTTPS პროქსებს უჭერს მხარს. პაკეტების ბილიკები განსაზღვრულ ნდობის ნაკრებებს აღნიშნავს: PROXY_CAINFO ამოწმებს შუამავალს; CAINFO ამოწმებს დანიშნულების TLS-ს. გამოტოვეთ მკაფიო გადაფარვა, როცა არსებული ნდობა უკვე ფარავს ამ კავშირს.
URL PROXY-ში აღწერს მის მსმენელს. რიცხვითი PROXYTYPE ვარაუდი არ არის საჭირო. ჩვეულებრივი HTTP მსმენელისთვის URL რჩება http://, HTTPS დანიშნულების შემთხვევაშიც. ამ შემთხვევაში HTTP პროქსების სია გვაწვდის საბოლოო წერტილების კანდიდატებს; პროქსის TLS პაკეტი მოქმედებს მხოლოდ მაშინ, როცა მსმენელი ნამდვილად იყენებს TLS-ს.
საჭიროების შემთხვევაში მიაწოდეთ პროქსის ანგარიში PROXYUSERNAME-ისა და PROXYPASSWORD-ის მეშვეობით. შეინარჩუნეთ სერტიფიკატის შემოწმება: პროქსის შემოწმების გამორთვა შლის შუამავალის იდენტობის შემოწმებას, ნაცვლად დაკარგული უწყების დაყენებისა.