Ошибка возврата SOAP-функции с использованием PHP

1

Используя это:

<?PHP
$client = new SoapClient('servername.wsdl');
$result = $client->GetUsersEmail(array('Password' => 
'mypassword',   'username' => 'myusername'));
var_dump ($result);
?>

Я получаю этот результат:

object (stdClass) # 1 (1) {["GetUsersEmailResult"] => строка (8) "myusername"}

Есть еще одна функция - IsValidUser - И когда я заменяю "GetUsersEmail" на "IsValidUser", я получаю правильное значение: true или false.p

Совершенно новый для SOAP, и я понятия не имею, что мне не хватает.

Фактический.wsdl находится в Интранете, но здесь есть ссылка на копию. http://www.awrensnest.com/sample.wsdl

  • 0
    «Проблема» в том, что мы не можем видеть внутри файла WSDL. Этот файл определяет, какие структуры / типы возвращаются и какие вызовы существуют. Вполне возможно, что оба возврата вызовов отличаются от того, что вы ожидаете, и что вы ничего не упускаете. Единственный способ узнать, зная, что внутри servername.wsdl
  • 0
    добавили ссылку на образец .wsdl
Теги:
soap

1 ответ

1
<wsdl:operation name="GetUsersEmail">
<wsdl:input wsaw:Action="http:/ / tempuri.org / IAuthenticationService / GetUsersEmail " message="tns: IAuthenticationService_GetUsersEmail_InputMessage "/>
<wsdl:output wsaw:Action="http: //tempuri.org/IAuthenticationService/GetUsersEmailResponse" message="tns:IAuthenticationService_GetUsersEmail_OutputMessage"/>

Вам нужно найти определение xsd для выходного сообщения, возможно, оно не установлено в строку.

  • 0
    Оказывается, мой код был в порядке, и была проблема с функциями на сервере. Спасибо за вашу помощь.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню