Ich habe WSld URL. Ich muss einen benutzerdefinierten http-Anfrage-Header hinzufügen, um für diese wsdl zu autorisieren. Wenn ich einen Soapclient wie folgt versuche, bekomme ich einen Fehler.Soapclient wsdl initialisieren mit benutzerdefinierten HTTP-Anfrage-Header
/* userName and password is masked in this question */
$opts = array(
'http'=>array(
"userName:xxxxx\r\n".
"password:xxxxxx\r\n"
)
);
$streamContext = stream_context_create($opts);
$cilent = new SoapClient("https://iflyrestest.ibsgen.com:6013/iRes_Booking_WS/services/AvailabilityPort?wsdl" , array('stream_context' => $streamContext));
Fehler:
Fatal error: Uncaught SoapFault exception: [WSDL] SOAP-ERROR: Parsing WSDL: Couldn't find <definitions> in
Weil Antwort ist wie 'Sie sind nicht berechtigt, diese URL zugreifen ...'
Auch wenn ich Funktion 'file_get_content()' versuchen, mit gleichen stream_context , Ich bekomme erfolgreich Inhalt dieser URL.
Wie sollte ich einen Soapclient für diesen Fall verwenden?
@mikeel Leider verwendet die WSDL keine HTTP-Standardauthentifizierung. Ich muss sie über HTTP-Header senden –