Lasting av ekstern WSDL kan skje inne i SoapClient-konstruktøren. Oppgi proxyen før den første hentingen:

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

Bruk den ekte WSDL-en, vertsnavn/port for proxyen og den tiltenkte kilden for påloggingsinformasjon. Vertsfeltet er en adresse, og porten er separat.

Når det feilerForespørsel eller operasjon som skal undersøkes
Konstruksjon av klientenWSDL-henting eller dokumentbehandling.
Behandling av importert dokument/skjemaDen faktiske ekstra hente-URL-en.
Et SOAP-metodekallTjenestesluttpunktet som er deklarert i WSDL-en, muligens på en annen vert.

En arbeidsprosess med bufret WSDL kan hoppe over forespørselen som feiler på en annen maskin. Behold buffer-konfigurasjonen og den faktiske feilende URL-en sammen med sammenligningen, i stedet for å endre proxyen bare basert på vellykket konstruksjon.

proxy_login/proxy_password autentiserer mellomleddet. Destinasjons-login/password og tjenesteautentisering på SOAP-nivå tjener andre lag. Bruk de dedikerte alternativene i stedet for å sette kontolignende headere i User-Agent; påkrevde applikasjonsheadere hører til i et støttet header-grensesnitt.

Loggfør operasjonen, målet og parten som utsteder en utfordring med hemmeligheter fjernet. connection_timeout begrenser opprettelsen av tilkoblingen, ikke hele varigheten av en lang SOAP-operasjon.

Relaterte artikler