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

អនុវត្តប្រតិបត្តិការ Blob ដែលបានគ្រោងទុកជំនួស pass ដោយប្រើ account_url និង credential របស់កម្មវិធី។ ការពឹងផ្អែក SOCKS ជាជម្រើសរបស់ Requests ត្រូវតែមានរួចហើយ។ socks5h ប្រគល់ DNS គោលដៅទៅ proxy។ សម្រាប់ចំណុចបញ្ចប់ Blob ដែលអាចចូលបានជាសាធារណៈ ដែលអនុញ្ញាតឱ្យមានអ្នកកណ្តាលសាធារណៈ បញ្ជី proxy SOCKS5 ផ្តល់បេក្ខជនសម្រាប់ proxy URL របស់ session។

កំណត់ trust_env នៅលើ session នេះ ដើម្បីគ្រប់គ្រង ការរួមបញ្ចូលបរិស្ថានរបស់ Requests។ RequestsTransport អនុវត្តការចាប់ផ្តើមបរិស្ថាន នៅពេលវាបង្កើត session មិនមែននៅពេលផ្តល់ session ដែលមានស្រាប់ទេ។ តម្លៃ false ច្បាស់លាស់រារាំងធាតុបញ្ចូលបរិស្ថាន proxy ពីការជំនួសផ្លូវនេះ។

ជម្រើសនោះក៏បិទការជ្រើសរើស CA ដោយផ្អែកលើបរិស្ថានផងដែរ។ ប្រសិនបើចាំបាច់ ផ្តល់ connection_verify="/path/to/ca-bundle.pem" ទៅ RequestsTransport ជាមួយ root ដែលត្រូវការសម្រាប់សេវាកម្មពិត។

Blob client បិទមុនបរិបទ session ខាងក្រៅ។ session_owner=False ទុកកម្មសិទ្ធិនៅនឹងប្លុកខាងក្រៅនោះ។ ព័ត៌មានសម្ងាត់ token ដែលបង្កើតដោយឡែកអាចមានការដឹកជញ្ជូន HTTP ផ្សេងទៀត។ កំណត់រចនាសម្ព័ន្ធវាដែរ ប្រសិនបើការទទួលបានរបស់វាត្រូវការ SOCKS។

អត្ថបទពាក់ព័ន្ធ