ការសាងសង់ Zeep Client ពី WSDL ពីចម្ងាយអាចទាញយកឯកសារនោះ និង import របស់វាភ្លាមៗ។ កំណត់ Transport ជាមុន ជំនួសឱ្យការកំណត់ proxy បន្ទាប់ពី Client បានព្យាយាមផ្ទុកការពិពណ៌នាសេវារួចហើយ។

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 គឺជា URL ពិតប្រាកដនៃការពិពណ៌នាសេវា។ ប្រសិនបើសេវានោះ និង import របស់វាអាចចូលប្រើបានជាសាធារណៈ ហើយ proxy សាធារណៈត្រូវបានអនុញ្ញាត បញ្ជី proxy HTTP ផ្តល់បេក្ខជនសម្រាប់ URL proxy របស់សម័យ។ រក្សាសម័យដែលបានកំណត់ឱ្យនៅរស់សម្រាប់ប្រតិបត្តិការ SOAP បន្ទាប់ បន្ទាប់មកបិទវានៅពេលការងារនោះបញ្ចប់។

Transport.timeout គ្រប់គ្រងការផ្ទុក WSDL និង XSD។ operation_timeout គ្រប់គ្រងសំណើ HTTP សម្រាប់ប្រតិបត្តិការសេវា។ ដូច្នេះការអស់ពេល metadata អំឡុងពេលសាងសង់ Client គឺជាដំណាក់កាលខុសគ្នាពីការអស់ពេលនៃការហៅវិធីសាស្ត្រនៅពេលក្រោយ។

ក្នុងឧទាហរណ៍នេះ ការរួមបញ្ចូលបរិស្ថាន របស់ Requests នៅតែសកម្ម។ ប្រសិនបើតម្លៃ proxy បរិស្ថានប៉ះទង្គិចនឹងផ្លូវដែលត្រូវការច្បាស់លាស់ សូមប្រើ session.trust_env=False ហើយផ្តល់ CA bundle និងការកំណត់ authentication ដែលត្រូវការច្បាស់លាស់។

ពិនិត្យ URL នៃឯកសារដែលបាន import នៅពេលការចាប់ផ្តើមនៅតែបរាជ័យ។ WSDL កម្រិតកំពូលអាចផ្ទុកបានដោយជោគជ័យ ខណៈ schema ដែលបាន import ប្រើ hostname ឬ protocol គោលដៅផ្សេង។

អត្ថបទពាក់ព័ន្ធ