PHP SOAP服务器配置/实现


PHP SOAP server configuration/implementation

我需要实现一个SOAP服务器,它将响应作为SOAP客户机行为的第三方应用程序。

服务器应该是PHP的,所以我开始使用nussoap和http://www.wsdltophp.com/来生成骨架。

这是他们给我的wsdl文件:http://pastebin.com/YXBbszqE支持部门的人说我应该从Ping请求开始,因为它是最简单直接的实现。

我是新手,如果你能帮助我,我会很感激的。

这是我到目前为止为服务器所做的:http://pastebin.com/vARst5t0

和模拟客户端:http://pastebin.com/seG7EmM6

,它给我一个错误:http://pastebin.com/Say6FmF6

谢谢大家。

编辑:我发现在服务器上,禁用error_reporting后,我没有收到之前的错误。

我忘了提到我使用加载wsdl文件的nussoap功能,而不是手动定义每个complexType,但它仍然不工作,现在我得到以下错误:Operation 'Ping' is not defined in the WSDL for this service。我确信它就在那里

可能它来自于生成包时选择的选项。实际上,在调用MySoapServicePing::Ping()方法时,参数可能没有正确发送:包含在数组中或没有包含在数组中。因此,尝试修改生成行为并再次发送请求。

您还可以查看发送到SOAP服务器的XML请求,以确保它不是来自请求。要获得XML请求,您可以在发送请求后调用MySoapWsdlClass::getSoapClient()->__getLastRequest()方法或$mySoapServicePing->getLastRequest()方法(取决于生成器的版本)。

谢谢大家,我最终使用了php本地函数,它更容易配置。