2016-08-09 9 views
0

Ich mache eine SOAP-Anfrage an einen Drittanbieter-Service, mit der Standard-PHP-Soap-Client und ich bekomme immer eine "Soap Fault: falsche Version" -Fehler.PHP-Soap-Client, der "WrongVersion" -Fehler zurückgibt. Funktioniert gut in Postman

Noch kann ich die rohe Antwort erhalten (mit $ client -> __ getLastResponse()) und ihre Rückkehr Erfolg. Ich habe versucht, die Option "soap_version" auf "SOAP_1_1" und "SOAP_1_2" zu setzen, aber immer noch den gleichen Fehler. Der Inhaltstyp und der Soap-Namespace wurden in der neuen Anforderung korrekt geändert, sodass die Änderungen übernommen werden.

Ich deaktiviert auch Wsdl-Cache.

Ich dachte, es könnte ein Problem der WSDL, die für SOAP 1.1 ist, aber ich habe versucht, "Non WSDL" -Modus zu verwenden, und es gibt den gleichen Fehler.

Wenn ich die gleiche Anfrage mit Postman gemacht habe, mit exaclty die gleiche Nachricht und Header funktioniert alles gut, was mich denken lässt, ist eine Besonderheit oder Validierung durch den PHP Soap Client.

Weitere Ideen?

Antwort

0

Das Problem gefunden. Der Drittanbieter antwortet nicht mit einer gültigen SOAP-Nachricht, sondern in einfachem XML. Dadurch kann der SOAP-Client die Nachricht nicht verarbeiten und diesen Fehler anzeigen.

Verwandte Themen