Служба WSDL: получение параметров запроса - PullRequest
0 голосов
/ 26 апреля 2018

Хорошо. Итак, у меня установлена ​​служба WSDL, и я могу получить к ней доступ по следующему URL:

сервер1 / AccessService / StockControlService.svc

И когда я просматриваю эту страницу, я получаю длинную страницу XML. В этом XML есть элементы с именем operations, которые являются именами функций, которые я использую. Например, есть функция с именем StockPrice_Return.

Однако у каждой функции есть определенный набор параметров, через которые вы должны передать ей, чтобы получить результат обратно. В Google Chrome я установил расширение под названием Wizdler, которое позволяет мне щелкнуть имя функции и увидеть следующий XML:

<Envelope xmlns="http://schemas.xmlsoap.org/soap/envelope/">
    <Body>
        <StockPrice_Return xmlns="http://tempuri.org/">
            <!-- Optional -->
            <request>
                <Ticket xmlns="http://schemas.datacontract.org/2004/07/AccessUKWebService.DimensionsWebService">[string?]</Ticket>
                <PriceLineNo xmlns="http://schemas.datacontract.org/2004/07/AccessUKWebService.DimensionsWebService">[string?]</PriceLineNo>
                <PriceType xmlns="http://schemas.datacontract.org/2004/07/AccessUKWebService.DimensionsWebService">[string?]</PriceType>
                <StockCode xmlns="http://schemas.datacontract.org/2004/07/AccessUKWebService.DimensionsWebService">[string?]</StockCode>
            </request>
        </StockPrice_Return>
    </Body>
</Envelope>

Это замечательно, так что из этого видно, что мне нужны Ticket, PriceLineNo, PriceType и StockCode, чтобы иметь возможность запрашивать эту функцию.

Однако у меня есть несколько служб WSDL, каждая из которых функционирует более 20 или более. Я хочу иметь возможность генерировать с помощью PHP функции и параметры самостоятельно.

Функция PHP Soap, похоже, обладает такой способностью. Есть __getFunctions() и __getTypes(), но ни один из них, похоже, не возвращает данные, которые я ищу.

Я не знаю, как расширение chrome получает этот XML выше, но если бы я мог просто вернуть его сам, я мог бы создать синтаксический анализатор XML в своем браузере. Я скачал SoapUI, и ему тоже удалось найти вышеуказанный XML. Но нет, где я могу найти документацию о том, как получить проклятые параметры! Это сводит меня с ума!

...