Indlæsning af ekstern WSDL kan ske inde i SoapClient-konstruktøren. Angiv proxyen før den første hentning:

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

Brug den rigtige WSDL, proxyens vært/port og den tilsigtede kilde til loginoplysninger. Værtfeltet er en adresse, og porten er separat.

Når det fejlerAnmodning eller handling, der skal undersøges
Konstruktion af klientenWSDL-hentning eller dokumentbehandling.
Behandling af importeret dokument/skemaDen faktiske ekstra hente-URL.
Et SOAP-metodekaldTjenesteslutpunktet, der er erklæret i WSDL'en, muligvis på en anden vært.

En arbejdsproces med cachelagret WSDL kan springe den anmodning over, der fejler på en anden maskine. Behold cachekonfigurationen og den faktiske fejlende URL sammen med sammenligningen i stedet for at ændre proxyen alene ud fra en vellykket konstruktion.

proxy_login/proxy_password godkender mellemleddet. Destinationens login/password og servicegodkendelse på SOAP-niveau tjener andre lag. Brug de særlige indstillinger i stedet for at sætte kontolignende headers i User-Agent; påkrævede applikationsheaders hører til i en understøttet header-interface.

Registrer handlingen, målet og den part, der udsteder en udfordring med hemmeligheder fjernet. connection_timeout begrænser forbindelsesoprettelsen, ikke hele varigheden af en lang SOAP-handling.

Relaterede artikler