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 yerinə nəzərdə tutulan Blob əməliyyatını yerinə yetirin, tətbiqin account_url və credential dəyərlərindən istifadə edin. Requests-in opsional SOCKS asılılıqları artıq mövcud olmalıdır. socks5h təyinat DNS-ini proksiyə həvalə edir. İctimai vasitəçilərə icazə verilən, ictimai əlçatan Blob son nöqtəsi üçün SOCKS5 proksi siyahısı sessiyanın proksi URL-i üçün namizədlər təqdim edir.

Bu sessiyada trust_env dəyərini Requests-in mühit inteqrasiyasını idarə etmək üçün qoyun. RequestsTransport mühit ilkinləşdirməsini sessiya yaratdıqda tətbiq edir, mövcud sessiya verildikdə deyil. Açıq false dəyəri proksi mühiti girişlərinin bu marşrutu əvəz etməsinin qarşısını alır.

Bu seçim mühitə əsaslanan CA seçimini də söndürür. Lazım gələrsə, faktiki xidmət üçün tələb olunan köklərlə birlikdə RequestsTransport-a connection_verify="/path/to/ca-bundle.pem" verin.

Blob müştərisi xarici sessiya kontekstindən əvvəl bağlanır. session_owner=False sahibliyi həmin xarici blokda saxlayır. Ayrıca yaradılmış token etimadnaməsinin başqa HTTP transportu ola bilər; onun alınması SOCKS tələb edirsə, onu da konfiqurasiya edin.

Əlaqəli məqalələr