Объект массива мыла в PHP. Где данные попадают в запрос SOAP - PullRequest
1 голос
/ 09 декабря 2011

Я пытаюсь вызвать сервис SOAP из C #.К сожалению, способ его реализации в PHP немного сбивает с толку.Я получил этот код здесь, в PHP, объясняющий, как вызвать службу:

    $oClient = new SoapClient("http://xxxxxxxxx?wsdl",
array(
    'trace'         => 1, 
    'exceptions'    => true,
    'login'         => "xxxxxxxx",
    'password'      => "xxxxxxxx"       
    )); 

Проблема в том, что я понятия не имею, как передать массив в c # или как выглядит отформатированное сообщение.

Я хотел бы знать, как PHP вставляет эту информацию в запрос SOAP.Я попросил парня на несколько мгновений снять защиту, чтобы проверить, правильно ли отформатировано мое сообщение, и все ли отлично работает, что я написал для обработки запроса, кроме этого пользовательского объекта массива.

Я попытался построить linuxмашина для контроля вывода, но я не могу запустить Linux на своей машине по какой-то причине, потому что он зеленый экран, и мне действительно нужно сделать это быстро, потому что сейчас я потратил впустую целую вечность.

Я думаюэта информация должна появиться в заголовке запроса SOAP, но документация кажется недостаточной.Мне никогда не нравилась документация по PHP

1 Ответ

0 голосов
/ 09 декабря 2011

Не могли бы вы уточнить, что вы пытаетесь сделать? Предоставленный вами код PHP создает SOAP-клиент для службы SOAP на основе описания WSDL (язык описания веб-служб) по адресу http://xxxxxxxxx? Wsdl , он ничего не вызывает. Вы вызываете различные функции, описанные в WSDL, следующим образом:

$oClient->__soapCall("SomeFunction", array($a, $b, $c));

где SomeFunction - имя удаленной функции, а массив - ее параметры.

В любом случае, похоже, что вы пытаетесь построить клиент SOAP на C # - для этого должна быть библиотека или расширение C #, поэтому вызов службы SOAP не должен сильно отличаться от PHP. По сути, вы просто создаете клиент и вызываете удаленные функции, которые (и их параметры) описаны в файле WSDL. Вы даже не должны видеть XML-пакеты.

Если вы хотите увидеть несколько примеров того, как выглядят пакеты, вот один из них: Примеры аннотированных WSDL @ w3c.org

И некоторое описание: Использование WSDL в приложениях SOAP @ ibm.com

Но все заботится о библиотеке на вашем языке. Здесь обсуждается стеке потока: Какую клиентскую библиотеку C # SOAP проще всего использовать?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...