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 ਰਾਹੀਂ ਪ੍ਰੌਕਸੀ ਖਾਤਾ ਦਿਓ। ਸਰਟੀਫਿਕੇਟ ਪੁਸ਼ਟੀ ਬਣਾਈ ਰੱਖੋ: ਪ੍ਰੌਕਸੀ ਪੁਸ਼ਟੀ ਬੰਦ ਕਰਨ ਨਾਲ ਗੁੰਮ ਅਥਾਰਟੀ ਸਥਾਪਿਤ ਕਰਨ ਦੀ ਥਾਂ ਮੱਧਸਥ ਦੀ ਪਛਾਣ ਜਾਂਚ ਹਟ ਜਾਂਦੀ ਹੈ।