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

Framkvæmdu fyrirhugaða Blob-aðgerð í stað pass, með account_url og credential forritsins. Valfrjálsar SOCKS-tengingar Requests verða þegar að vera til staðar. socks5h felur DNS áfangastaðarins milliþjóninum. Fyrir opinberlega aðgengilegan Blob-endapunkt þar sem opinberir milliliðir eru leyfðir býður SOCKS5-milliþjónalistinn upp á frambjóðendur fyrir milliþjóna-URL setunnar.

Stilltu trust_env á þessari setu til að stjórna umhverfissamþættingu Requests. RequestsTransport beitir umhverfisfrumstillingu sinni þegar það býr til setu, ekki þegar því er gefin núverandi seta. Skýra false-gildið kemur í veg fyrir að umhverfisinntak milliþjóns komi í stað þessarar leiðar.

Þessi valkostur slökkvir einnig á umhverfisbundnu CA-vali. Ef þörf krefur skaltu gefa connection_verify="/path/to/ca-bundle.pem" til RequestsTransport, með þeim rótum sem þarf fyrir raunverulegu þjónustuna.

Blob-biðnum er lokað áður en ytri setuSamhengið. session_owner=False lætur eignarhaldið vera hjá þeim ytri blokk. Táknskírteini sem búið er til sérstaklega getur haft aðra HTTP-flutning; skilgreindu það líka ef öflun þess krefst SOCKS.

Tengdir greinar