Я пытаюсь использовать SOAP-сервис Chaverweb. У меня есть WSDL; это here.PHP SOAP запрос не работает с WSDL
Когда я пытаюсь сделать простой запрос, например GetCWVersion
, он работает, но всякий раз, когда я пытаюсь запросить функцию, которая потребует какой-то проверки подлинности, например Get_Syn_Comsend
(получение информации об институте), она не работает.
Я попытался установить AuthHeader
, как указано в WSDL, но он не работает.
Вот мой код. Я надеюсь, что есть что-то очевидно, что я не делаю, так как это мой первый раз работает с SOAP:
try {
$soapClient = new SoapClient('https://www.chaverweb.net/Synagogue.asmx?WSDL');
$header = new SoapHeader('https://www.chaverweb.net/webservices/', 'AuthHeader', array("Username"=>"[email protected]", "Password"=>"...", "SynKey"=>"..."), false);
$header2 = new SoapHeader('https://www.chaverweb.net/webservices/', 'SFHeader', array("sf"=>""), false);
$soapClient->__setSoapHeaders(array($header, $header2));
$versionResponse = $soapClient->Get_Syn_Comsend();
print_r($versionResponse);
} catch (SoapFault $exception) {
echo "Exception: " . $exception->getMessage();
}
Это, кстати, дает мне: StdClass Object() Спасибо вам большое!
Вы можете уточнить, что означает «не работает»? вы получили сообщение об ошибке? если да, то какая была ошибка. – castis
Возвращает пустой stdClass - страница показывает stdClass Object() – maor10
Форматирование и исправления грамматики. – AstroCB