好的所以我安装了WSDL服务,我可以通过以下URL访问它:
server1的/ AccessService / StockControlService.svc
当我查看该页面时,我得到了一长页XML。在那个XML中有一些名为operations
的元素,它们是我使用的函数名。例如,有一个名为StockPrice_Return
的函数。
但是,每个函数都有一组特定的参数,您必须将这些参数传递给它才能获得结果。在谷歌浏览器中,我安装了一个名为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或30多个函数。我希望能够自己使用PHP生成函数和参数。
PHP Soap函数doenst似乎具备此功能。有__getFunctions()
和__getTypes()
,但它们似乎都没有返回我之后的数据。
我不知道chrome扩展如何获得上面的XML但是如果我可以自己返回它那么我可以在浏览器中构建XML解析器。我下载了SoapUI,它也设法找到了上面的XML。但是我无法在哪里找到关于如何获得该死的参数的文档!这让我很生气!