Proxy-innstillingar for PHP SoapClient for WSDL og tenestekall
Konfigurer proxyval for PHP SoapClient for WSDL-lasting og tenestekall utan å setje inn påloggingsinformasjon i User-Agent.
Lasting av ekstern WSDL kan skje inne i SoapClient-konstruktøren. Oppgi proxyen før den første hentinga:
$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, vertsnamn/port for proxyen og den tiltenkte kjelda for påloggingsinformasjon. Vertsfeltet er ei adresse, og porten er separat.
| Når det feilar | Førespurnad eller operasjon som skal undersøkjast |
|---|---|
| Konstruksjon av klienten | WSDL-henting eller dokumenthandsaming. |
| Handsaming av importert dokument/skjema | Den faktiske ekstra hente-URL-en. |
| Eit SOAP-metodekall | Tenestesluttpunktet som er deklarert i WSDL-en, moglegvis på ein annan vert. |
Ein arbeidsprosess med buftra WSDL kan hoppe over førespurnaden som feilar på ein annan maskin. Ta vare på buffer-konfigurasjonen og den faktiske feilande URL-en saman med samanlikninga, i staden for å endre proxyen berre basert på vellukka konstruksjon.
proxy_login/proxy_password autentiserer mellomleddet. Destinasjons-login/password og tenesteautentisering på SOAP-nivå tenar andre lag. Bruk dei dedikerte vala i staden for å setje kontoliknande headere i User-Agent; påkravde applikasjonsheadere høyrer til i eit støtta header-grensesnitt.
Loggfør operasjonen, målet og parten som gjev ut ei utfordring med løyndomar fjerna. connection_timeout avgrensar opprettinga av tilknytinga, ikkje heile varigheita av ein lang SOAP-operasjon.