Zeep jeħtieġ il-proxy qabel ma jaqra l-WSDL
Oħloq is-sessjoni Requests u t-Transport ta' Zeep qabel ma tibni Client minn WSDL mill-bogħod.
Il-bini ta' Zeep Client minn WSDL mill-bogħod jista' minnufih iġib dak id-dokument u l-imports tiegħu. Ikkonfigura t-Transport l-ewwel, minflok ma tistabbilixxi proxy wara li Client ikun diġà pprova jtella' d-deskrizzjoni tas-servizz.
from requests import Session
from zeep import Client
from zeep.transports import Transport
session = Session()
session.proxies.update({
"http": "http://proxy.example.net:8080",
"https": "http://proxy.example.net:8080",
})
transport = Transport(
session=session,
timeout=10,
operation_timeout=30,
)
client = Client(wsdl_url, transport=transport)
wsdl_url huwa l-URL attwali tad-deskrizzjoni tas-servizz. Jekk dak is-servizz u l-imports tiegħu jkunu aċċessibbli pubblikament u l-proxies pubbliċi huma permessi, il-lista tal-proxies HTTP tipprovdi kandidati għall-URLs tal-proxy tas-sessjoni. Żomm is-sessjoni kkonfigurata ħajja għall-operazzjonijiet SOAP li jmiss, imbagħad agħlaqha meta dak ix-xogħol jintemm.
Transport.timeout jikkontrolla t-tagħbija tal-WSDL u XSD. operation_timeout jikkontrolla t-talbiet HTTP għall-operazzjonijiet tas-servizz. Għalhekk timeout tal-metadata waqt il-bini ta' Client huwa stadju differenti minn sejħa ta' metodu li tiskadi aktar tard.
F'dan l-eżempju l-integrazzjoni mal-ambjent ta' Requests tibqa' attiva. Jekk il-valuri tal-proxy tal-ambjent jaqblux ma' rotta meħtieġa b'mod espliċitu, uża session.trust_env=False u pprovdi b'mod espliċitu l-bundle CA u s-settings tal-awtentikazzjoni meħtieġa.
Iċċekkja l-URL tad-dokument importat meta l-inizjalizzazzjoni xorta tfalli. WSDL tal-ogħla livell jista' jitgħabba b'suċċess filwaqt li skema importata tuża hostname jew protokoll destinatarju ieħor.