Sanidi Proksi SOCKS5 kwa Mteja wa Python wa Azure Blob
Sanidi kikao cha Requests kilichotolewa chenyewe, kisha weka maisha yake nje ya mteja wa Blob unaofanya kazi kwa wakati mmoja ukitumia session_owner=False.
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:
passTekeleza operesheni iliyokusudiwa ya Blob badala ya pass, ukitumia account_url na credential za programu. Vitegemezi vya hiari vya SOCKS vya Requests lazima viwe tayari. socks5h hukabidhi DNS ya lengwa kwa proksi. Kwa kiungo cha mwisho cha Blob kinachofikiwa na umma ambapo wapatanishi wa umma wanaruhusiwa, orodha ya proksi za SOCKS5 hutoa wagombea kwa URL ya proksi ya kikao.
Weka trust_env kwenye kikao hiki ili kudhibiti uunganishaji wa Requests na mazingira. RequestsTransport hutumia uanzishaji wa mazingira inapounda kikao, si inapopewa kikao kilichopo. Thamani bayana ya false huzuia ingizo za mazingira ya proksi kuchukua nafasi ya njia hii.
Uchaguzi huo pia huzima uchaguzi wa CA unaotegemea mazingira. Ikihitajika, toa connection_verify="/path/to/ca-bundle.pem" kwa RequestsTransport, pamoja na mizizi inayohitajika kwa huduma halisi.
Mteja wa Blob hufungwa kabla ya muktadha wa nje wa kikao. session_owner=False huacha umiliki kwa bloku hiyo ya nje. Kitambulisho cha token kilichoundwa kando kinaweza kuwa na usafirishaji mwingine wa HTTP; kisanishi pia ikiwa upataji wake unahitaji SOCKS.