Ngarkimi i një WSDL në distancë mund të ndodhë brenda konstruktorit të SoapClient. Jepni proxy-n përpara asaj marrjeje të parë:

$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,
]);

Përdorni WSDL-në reale, hostin/portin e proxy-t dhe burimin e synuar të kredencialeve. Fusha e hostit është një adresë, ndërsa porta e saj është e veçantë.

Kur dështonKërkesa ose operacioni për t'u inspektuar
Ndërtimi i klientitMarrja e WSDL ose përpunimi i dokumentit.
Përpunimi i dokumentit/skema të importuarURL-ja shtesë reale e marrjes.
Thirrje metode SOAPPika fundore e shërbimit e deklaruar në WSDL, ndoshta në një host tjetër.

Një proces që përdor WSDL të ruajtur në cache mund të anashkalojë kërkesën që dështon në një makinë tjetër. Mbani konfigurimin e cache-s dhe URL-në që dështoi në të vërtetë bashkë me krahasimin, në vend që të ndryshoni proxy-n vetëm bazuar në ndërtimin e suksesshëm.

proxy_login/proxy_password vërtetojnë ndërmjetësin. login/password e destinacionit dhe vërtetimi i shërbimit në nivel SOAP shërbejnë shtresa të tjera. Përdorni opsionet e dedikuara në vend që të vendosni tituj si llogari në User-Agent; titujt e aplikacionit të kërkuar i përkasin një ndërfaqeje titujsh të mbështetur.

Regjistroni operacionin, objektivin dhe palën që lëshon sfidën me sekretet e hequra. connection_timeout kufizon vendosjen e lidhjes, jo kohëzgjatjen totale të një operacioni të gjatë SOAP.

Artikuj të ngjashëm