首页 文章

PHP SOAP服务器配置/实现

提问于
浏览
0

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

服务器应该是PHP,所以我开始使用nusoap和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文件的nusoap功能而不是手动定义每个complexType,但它仍然无法正常工作,现在我收到以下错误: Operation 'Ping' is not defined in the WSDL for this service . 我确信它在那里 .

2 回答

  • 0

    也许它来自您在生成包时选择的选项 . 实际上,在调用MySoapServicePing :: Ping()方法时,参数可能无法正确发送:数组是否包含 . 因此,尝试修改生成行为并再次发送请求 .

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

    如果它发生了变化,请告诉我 .

  • 2

    谢谢大家,我最终使用了php本机函数,配置起来要容易得多 .

相关问题