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

Yi aikin Blob da aka nufa a maimakon pass, ta amfani da account_url da credential na aikace-aikacen. Abubuwan da suka dogara da SOCKS na Requests dole ne su kasance a nan tuni. socks5h yana ba da DNS na manufa ga wakili. Don ƙarshen Blob da ake iya isa ga jama'a inda aka yarda da masu shiga tsakani na jama'a, jerin wakilai na SOCKS5 yana ba da 'yan takara don URL ɗin wakili na taron.

Saita trust_env a wannan taron don sarrafa haɗin gwiwar Requests da mahalli. RequestsTransport yana amfani da farkon mahalli sa'ad da ya ƙirƙiri taro, ba lokacin da aka ba shi wanda yake da shi ba. Ƙimar false bayyananna tana hana shigarwar mahalli na wakili maye gurbin wannan hanyar.

Wannan zaɓi kuma yana kashe zaɓin CA dangane da mahalli. Idan an buƙata, ba da connection_verify="/path/to/ca-bundle.pem" ga RequestsTransport, tare da tushen da ake buƙata don ainihin sabis ɗin.

Abokin ciniki na Blob yana rufewa kafin mahallin taron na waje. session_owner=False yana barin ikon mallaka ga wannan toshe na waje. Takardar shaidar token da aka ƙirƙira daban na iya samun wata hanyar HTTP; saita ta kuma idan samun ta yana buƙatar SOCKS.

Labarai masu alaƙa