Отладка вызова PHP SOAP

Я новичок в SOAP и имею дело с веб-сервисом, где, казалось бы, раньше никто не взаимодействовал с PHP. У них нет примера кода, кроме C #, но он у меня есть. eServices.asmx предоставляет WSDL, если это правильный способ сказать это.

Я получаю сообщение об ошибке: «Сервер не распознал значение HTTP-заголовка SOAPAction:» с этим обучающим двоеточием, предполагающим, что значение не передано, возможно.

Мой код выглядит так:

$URL = "http://nolaflash.example.com/xxxWS/eServices.asmx";

$namespace="http://www.example.com/webservices/";

include("SOAP/Client.php");

$soapclient = new SOAP_Client($URL);

$xml_data = // valid XML is here;

$res = $soapclient->UpdateData('usrname','pass',$xml_data);

, но я также пробовал:

$param = array('usrname','pass',$xml_data);
$res = $soapclient->call('UpdateData',$param, $namespace);

Поиск в Google предполагает, что эта ошибка связана с пространством имен. В коде C #, который у меня есть, есть только одна ссылка на пространство имен:

[System.Web.Services.WebServiceBindingAttribute(Name="eServicesSoap", Namespace="http://www.example.com/webservices/")]

Если я вываливаю $ soapclient на экран перед вызовом функции, я вижу, что он получил данные из eServices.asmx.

Я не уверен, как проводить отладку это и сотрудники службы незнакомы с взаимодействием со службой за пределами своей .NET IDE.

Есть мысли? Совет?

5
задан Kenster 4 September 2016 в 13:44
поделиться