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

Déan an oibríocht Blob atá beartaithe in ionad pass, ag baint úsáide as account_url agus credential an fheidhmchláir. Caithfidh spleáchais roghnacha SOCKS Requests a bheith i láthair cheana. Tarmligeanann socks5h DNS an chinn scríbe chuig an seachfhreastalaí. Do phointe deiridh Blob atá inrochtana go poiblí, áit a gceadaítear idirghabhálaithe poiblí, soláthraíonn an liosta seachfhreastalaí SOCKS5 iarrthóirí do URL seachfhreastalaí an tseisiúin.

Socraigh trust_env ar an seisiún seo chun comhtháthú timpeallachta Requests a rialú. Cuireann RequestsTransport a thúsú timpeallachta i bhfeidhm nuair a chruthaíonn sé seisiún, ní nuair a thugtar ceann atá ann cheana dó. Cuireann an luach false sainráite cosc ar ionchuir timpeallachta seachfhreastalaí an bealach seo a ionadú.

Díchumasaíonn an rogha sin roghnú CA bunaithe ar an timpeallacht freisin. Más gá, tabhair connection_verify="/path/to/ca-bundle.pem" do RequestsTransport, leis na fréamhacha a theastaíonn don tseirbhís iarbhír.

Dúntar an cliant Blob roimh chomhthéacs an tseisiúin sheachtraigh. Fágann session_owner=False an úinéireacht ag an mbloc seachtrach sin. Is féidir le dintiúir chomhartha a chruthaítear ar leithligh iompar HTTP eile a bheith acu; cumraigh é freisin má theastaíonn SOCKS lena fháil.

Ailt ghaolmhara