Nastavenia proxy PHP SoapClient pre WSDL a volania služieb
Nakonfigurujte možnosti proxy PHP SoapClient pre načítanie WSDL a volania služieb bez vkladania prihlasovacích údajov do User-Agent.
Načítanie vzdialeného WSDL môže prebehnúť v konštruktore SoapClient. Zadajte proxy pred týmto prvým načítaním:
$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,
]);Použite skutočný WSDL, hostiteľa/port proxy a zamýšľaný zdroj prihlasovacích údajov. Pole hostiteľa je adresa, port je oddelený.
| Keď to zlyhá | Požiadavka alebo operácia na preskúmanie |
|---|---|
| Vytvorenie klienta | Načítanie WSDL alebo spracovanie dokumentu. |
| Spracovanie importovaného dokumentu/schémy | Skutočná ďalšia URL na načítanie. |
| Volanie metódy SOAP | Koncový bod služby deklarovaný vo WSDL, prípadne na inom hostiteľovi. |
Proces používajúci kešovaný WSDL môže preskočiť požiadavku, ktorá na inom stroji zlyhá. Uchovávajte konfiguráciu keša a skutočnú neúspešnú URL spolu s porovnaním, namiesto zmeny proxy len na základe úspešného vytvorenia.
proxy_login/proxy_password overujú sprostredkovateľa. Cieľové login/password a autentifikácia služby na úrovni SOAP slúžia iným vrstvám. Používajte vyhradené možnosti namiesto vkladania hlavičiek podobných účtu do User-Agent; požadované hlavičky aplikácie patria do podporovaného rozhrania hlavičiek.
Zaznamenajte operáciu, cieľ a stranu, ktorá vydáva výzvu s odstránenými tajomstvami. connection_timeout obmedzuje nadviazanie spojenia, nie celkový čas dlhej operácie SOAP.