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:
        pass

pass-ന് പകരം ഉദ്ദേശിച്ച Blob പ്രവർത്തനം നിർവ്വഹിക്കുക, ആപ്പ്ലിക്കേഷന്റെ account_url, credential ഉപയോഗിച്ച്. Requests-ന്റെ ഓപ്ഷണൽ SOCKS ഡിപ്പൻഡൻസികൾ ഇതിനകം ഉണ്ടായിരിക്കണം. socks5h ലക്ഷ്യ DNS പ്രോക്സിയിലേക്ക് കൈമാറുന്നു. പൊതുവായി ആക്സസ് ചെയ്യാവുന്ന Blob എൻഡ്പോയിന്റിന്, പൊതു ഇടനിലക്കാർ അനുവദനീയമായിടത്ത്, SOCKS5 പ്രോക്സി പട്ടിക സെഷന്റെ പ്രോക്സി URL-ന് സ്ഥാനാർത്ഥികൾ നൽകുന്നു.

Requests-ന്റെ പരിസ്ഥിതി സംയോജനം നിയന്ത്രിക്കാൻ ഈ സെഷനിൽ trust_env സജ്ജമാക്കുക. RequestsTransport സെഷൻ സൃഷ്ടിക്കുമ്പോൾ പരിസ്ഥിതി ആരംഭീകരണം പ്രയോഗിക്കുന്നു, നിലവിലുള്ള ഒന്ന് നൽകുമ്പോഴല്ല. വ്യക്തമായ false മൂല്യം പ്രോക്സി പരിസ്ഥിതി ഇൻപുട്ടുകൾ ഈ പാത മാറ്റിസ്ഥാപിക്കുന്നത് തടയുന്നു.

ആ തിരഞ്ഞെടുപ്പ് പരിസ്ഥിതി അടിസ്ഥാനമാക്കിയ CA തിരഞ്ഞെടുപ്പും പ്രവർത്തനരഹിതമാക്കുന്നു. ആവശ്യമെങ്കിൽ, യഥാർത്ഥ സേവനത്തിന് ആവശ്യമായ റൂട്ടുകളോടെ connection_verify="/path/to/ca-bundle.pem" RequestsTransport-ന് നൽകുക.

ബാഹ്യ സെഷൻ സന്ദർഭത്തിന് മുമ്പ് Blob ക്ലയന്റ് അടയ്ക്കുന്നു. session_owner=False ഉടമസ്ഥത ആ ബാഹ്യ ബ്ലോക്കിൽ വിടുന്നു. വെവ്വേറെ സൃഷ്ടിച്ച ടോക്കൺ ക്രെഡൻഷ്യലിന് മറ്റൊരു HTTP ട്രാൻസ്പോർട്ട് ഉണ്ടാകാം; അതിന്റെ ലഭ്യതയ്ക്ക് SOCKS ആവശ്യമെങ്കിൽ അതും കോൺഫിഗർ ചെയ്യുക.

അനുബന്ധ ലേഖനങ്ങൾ