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

Wettaq l-operazzjoni Blob maħsuba minflok pass, billi tuża account_url u credential tal-applikazzjoni. Id-dipendenzi SOCKS fakultattivi ta' Requests diġà jridu jkunu preżenti. socks5h jiddelega d-DNS tad-destinazzjoni lill-prokuri. Għal endpoint Blob aċċessibbli pubblikament fejn intermediarji pubbliċi huma permessi, il-lista tal-prokuri SOCKS5 tipprovdi kandidati għall-URL tal-prokuri tas-sessjoni.

Issettja trust_env fuq din is-sessjoni biex tikkontrolla l-integrazzjoni ambjentali ta' Requests. RequestsTransport japplika l-inizjalizzazzjoni ambjentali tiegħu meta joħloq sessjoni, mhux meta jingħata waħda eżistenti. Il-valur false espliċitu jipprevjeni li inputs ambjentali tal-prokuri jissostitwixxu din ir-rotta.

Dik l-għażla tiddiżattiva wkoll l-għażla tas-CA bbażata fuq l-ambjent. Jekk meħtieġ, ipprovdi connection_verify="/path/to/ca-bundle.pem" lil RequestsTransport, bl-għeruq meħtieġa għas-servizz attwali.

Il-klijent Blob jagħlaq qabel il-kuntest tas-sessjoni ta' barra. session_owner=False iħalli s-sjieda ma' dak il-blokk ta' barra. Kredenzjali token maħluqa separatament jista' jkollhom trasport HTTP ieħor; ikkonfigurahom ukoll jekk il-kisba tagħhom teħtieġ SOCKS.

Artikli relatati