Mga setting ng proxy ng PHP SoapClient para sa WSDL at mga tawag sa serbisyo
I-configure ang mga opsyon ng proxy ng PHP SoapClient para sa paglo-load ng WSDL at mga tawag sa serbisyo nang hindi naglalagay ng mga kredensyal sa User-Agent.
Ang paglo-load ng malayong WSDL ay maaaring mangyari sa loob ng constructor ng SoapClient. Ibigay ang proxy bago ang unang pagkuha:
$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,
]);Gamitin ang tunay na WSDL, host/port ng proxy at ang nilalayong pinagmulan ng kredensyal. Ang field ng host ay isang address, hiwalay ang port nito.
| Kapag nabigo ito | Kahilingan o operasyong susuriin |
|---|---|
| Pagbuo ng client | Pagkuha ng WSDL o pagproseso ng dokumento. |
| Pagproseso ng inangkat na dokumento/schema | Ang aktwal na karagdagang URL ng pagkuha. |
| Tawag sa paraang SOAP | Ang endpoint ng serbisyong idineklara sa WSDL, marahil sa ibang host. |
Ang prosesong gumagamit ng naka-cache na WSDL ay maaaring laktawan ang kahilingang nabibigo sa ibang makina. Itago ang configuration ng cache at ang aktwal na nabigong URL kasama ng paghahambing, sa halip na baguhin ang proxy batay lamang sa tagumpay ng pagbuo.
proxy_login/proxy_password ay nagpapatunay sa tagapamagitan. Ang login/password ng destinasyon at pagpapatunay ng serbisyo sa antas SOAP ay naglilingkod sa ibang mga layer. Gamitin ang mga nakalaang opsyon sa halip na maglagay ng mga header na parang account sa User-Agent; ang mga kinakailangang header ng aplikasyon ay kabilang sa sinusuportahang interface ng header.
Itala ang operasyon, target at partidong naglalabas ng hamon na inalis ang mga lihim. Ang connection_timeout ay naglilimita sa pagtatatag ng koneksyon, hindi sa buong tagal ng mahabang operasyong SOAP.