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()HTTPS ପ୍ରକ୍ସି ସମର୍ଥନ କରୁଥିବା PycURL/libcurl ବିଲ୍ଡ ବ୍ୟବହାର କରନ୍ତୁ। ବଣ୍ଡଲ ପଥଗୁଡ଼ିକ ଅଭିପ୍ରେତ ବିଶ୍ୱାସ ସେଟ୍ ସୂଚାଏ: PROXY_CAINFO ମଧ୍ୟସ୍ଥକୁ ଯାଞ୍ଚ କରେ; CAINFO ଲକ୍ଷ୍ୟର TLS ଯାଞ୍ଚ କରେ। ବିଦ୍ୟମାନ ବିଶ୍ୱାସ ସେହି ସଂଯୋଗକୁ ପୂର୍ବରୁ ଆବୃତ କରିଥିଲେ ସ୍ପଷ୍ଟ ଓଭରରାଇଡ୍ ଛାଡ଼ିଦିଅନ୍ତୁ।
PROXY ରେ ଥିବା URL ଏହାର ଶ୍ରୋତାକୁ ବର୍ଣ୍ଣନା କରେ। ସାଂଖ୍ୟିକ PROXYTYPE ଅନୁମାନ ଆବଶ୍ୟକ ନାହିଁ। ସାଧାରଣ HTTP ଶ୍ରୋତା ପାଇଁ ଲକ୍ଷ୍ୟ HTTPS ହେଲେ ମଧ୍ୟ URL http:// ରହେ। ସେହି କ୍ଷେତ୍ରରେ HTTP ପ୍ରକ୍ସି ତାଲିକା ଏଣ୍ଡପଏଣ୍ଟ ପ୍ରାର୍ଥୀ ଯୋଗାଏ; ପ୍ରକ୍ସି TLS ବଣ୍ଡଲ କେବଳ ସେତେବେଳେ ଲାଗୁ ହୁଏ ଯେତେବେଳେ ଶ୍ରୋତା ପ୍ରକୃତରେ TLS ବ୍ୟବହାର କରେ।
ଆବଶ୍ୟକ ହେଲେ PROXYUSERNAME ଏବଂ PROXYPASSWORD ମାଧ୍ୟମରେ ପ୍ରକ୍ସି ଆକାଉଣ୍ଟ ଦିଅନ୍ତୁ। ପ୍ରମାଣପତ୍ର ଯାଞ୍ଚ ବଜାୟ ରଖନ୍ତୁ: ପ୍ରକ୍ସି ଯାଞ୍ଚ ବନ୍ଦ କଲେ ଅନୁପସ୍ଥିତ ପ୍ରାଧିକରଣ ସ୍ଥାପନ କରିବା ପରିବର୍ତ୍ତେ ମଧ୍ୟସ୍ଥର ପରିଚୟ ଯାଞ୍ଚ ହଟିଯାଏ।