Deji SOCKS5 proxy loo macmiilka Python ee Azure Blob
Deji Requests session-ka la bixiyay laftiisa, ka dibna haynta noloshiisa ka baxsan macmiilka Blob synchronous adigoo isticmaalaya session_owner=False.
import requests
from azure.core.pipeline.transport import RequestsTransport
from azure.storage.blob import BlobServiceClient
with requests.Session() as session:
session.trust_env = False
session.proxies["https"] = "socks5h://proxy.example:1080"
transport = RequestsTransport(session=session, session_owner=False)
with BlobServiceClient(
account_url=account_url,
credential=credential,
transport=transport,
) as client:
passFuli hawsha Blob ee loogu talagalay pass halkii, adigoo isticmaalaya account_url iyo credential ee barnaamijka. Ku-tiirsanaanta SOCKS ee ikhtiyaariga ah ee Requests waa inay horey u jiraan. socks5h wuxuu DNS-ka meesha loo socdo u gudbiyaa proxy-ga. Boostada Blob ee si guud loo gaari karo halkaas oo dhexdhexaadiyeyaasha guud la oggol yahay, liiska proxy SOCKS5 wuxuu bixiyaa musharraxiin URL-ga proxy-ga session-ka.
Ku dhig trust_env session-kan si aad u xakameyso iskudhafnaanta deegaanka Requests. RequestsTransport waxay ku dabaqdaa bilowga deegaanka marka ay abuurto session, ee ma aha marka la siiyo mid jira. Qiimaha false ee cad wuxuu ka hortagaa gelinta deegaanka proxy inay beddelaan waddadan.
Dookaas waxay sidoo kale damisaa xulashada CA ee ku salaysan deegaanka. Haddii loo baahdo, sii connection_verify="/path/to/ca-bundle.pem" RequestsTransport, oo ay la socdaan xididdada loo baahan yahay adeegga dhabta ah.
Macmiilka Blob wuu xirmayaa ka hor macnaha session-ka dibadda. session_owner=False wuxuu la sii daayaa lahaanshaha block-ka dibadda. Aqoonsiga token-ka ee si gooni ah loo abuuray wuxuu yeelan karaa gaadiid HTTP kale; sidoo kale deji haddii helitaankiisa u baahan SOCKS.