PHP SoapClient proxy beállítások WSDL-hez és szolgáltatáshívásokhoz
Állítsa be a PHP SoapClient proxy beállításait WSDL betöltéséhez és szolgáltatáshívásokhoz anélkül, hogy hitelesítő adatokat szúrna a User-Agent fejlécbe.
A távoli WSDL betöltése a SoapClient konstruktorában történhet. Adja meg a proxyt az első lekérés előtt:
$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,
]);Használja a valódi WSDL-t, a proxy hosztját/portját és a szándékolt hitelesítő adatforrást. A hoszt mező egy cím, a portja külön áll.
| Amikor meghiúsul | Vizsgálandó kérés vagy művelet |
|---|---|
| Az ügyfél létrehozása | WSDL-lekérés vagy dokumentumfeldolgozás. |
| Importált dokumentum/séma feldolgozása | A tényleges további lekérési URL. |
| SOAP-metódushívás | A WSDL-ben deklarált szolgáltatásvégpont, esetleg másik hoszton. |
A gyorsítótárazott WSDL-t használó folyamat kihagyhatja azt a kérést, amely egy másik gépen meghiúsul. Tartsa meg a gyorsítótár konfigurációját és a ténylegesen meghiúsult URL-t az összehasonlítás mellett, ahelyett hogy csak a sikeres létrehozás alapján változtatna a proxyn.
proxy_login/proxy_password hitelesíti a közvetítőt. A cél login/password és a SOAP-szintű szolgáltatáshitelesítés más rétegeket szolgál. Használja a dedikált beállításokat, ahelyett hogy fiókszerű fejléceket tenne a User-Agentbe; a szükséges alkalmazásfejlécek egy támogatott fejlécfelülethez tartoznak.
Rögzítse a műveletet, a célt és a kihívást kiadó felet a titkok eltávolításával. A connection_timeout a kapcsolat létrehozását korlátozza, nem egy hosszú SOAP-művelet teljes időtartamát.