Upakiaji wa WSDL ya mbali unaweza kutokea ndani ya kijenzi cha SoapClient. Toa proksi kabla ya upataji huo wa kwanza:

$client = new SoapClient('https://service.example.com/api?wsdl', [
    'proxy_host' => '203.0.113.10',
    'proxy_port' => 8080,
    'proxy_login' => getenv('PROXY_USER'),
    'proxy_password' => getenv('PROXY_PASSWORD'),
    'connection_timeout' => 5,
    'exceptions' => true,
]);

Tumia WSDL halisi, mwenyeji/bandari ya proksi na chanzo cha vitambulisho kilichokusudiwa. Sehemu ya mwenyeji ni anwani, na bandari yake ni tofauti.

InaposhindwaOmbi au operesheni ya kuchunguza
Ujenzi wa mtejaUpataji wa WSDL au usindikaji wa hati.
Usindikaji wa hati/mpango ulioingizwaURL halisi ya upataji wa ziada.
Simu ya mbinu ya SOAPKituo cha mwisho cha huduma kilichotangazwa katika WSDL, huenda kwenye mwenyeji mwingine.

Mchakato unaotumia WSDL iliyohifadhiwa kwenye akiba unaweza kuruka ombi ambalo hushindwa kwenye mashine nyingine. Weka mpangilio wa akiba na URL halisi iliyoshindwa pamoja na ulinganisho, badala ya kubadilisha proksi kwa msingi wa ujenzi uliofanikiwa pekee.

proxy_login/proxy_password huthibitisha mpatanishi. login/password za lengwa na uthibitishaji wa huduma katika ngazi ya SOAP huhudumia tabaka zingine. Tumia chaguo maalum badala ya kuweka vichwa vinavyofanana na akaunti kwenye User-Agent; vichwa vya programu vinavyohitajika ni mali ya kiolesura cha vichwa kinachotumika.

Rekodi operesheni, lengo na upande unaotoa changamoto huku siri zimeondolewa. connection_timeout hupunguza uanzishaji wa muunganisho, sio muda kamili wa operesheni ndefu ya SOAP.

Makala zinazohusiana