有没有办法捕获所有出站肥皂请求?

时间:2014-03-03 23:12:16

标签: php apache soap soap-client

我正在将一堆PHP代码迁移到新服务器。该代码用于对远程服务器进行SOAP调用以推送和提取信息(数据库同步)。我已经确定了许多需要更新的脚本,但不能100%确定我拥有所有内容,并且开发此内容的人不再与公司合作。

我的问题是,有没有办法捕获并记录来自服务器的所有SOAP请求?通过这种方式,我将能够精确确定正在运行的内容。也许打开PHP SoapClient构造函数的日志记录?我无法找到办法。如果没有,也许Apache(LAMP堆栈[CentOS 6.5])或服务器上运行的其他服务可以做到这一点?

提前致谢。

1 个答案:

答案 0 :(得分:0)

您可以使用SoapClient :: _ getLastRequest()和SoapClient :: _getLastResponse(),然后使用error_log或其他日志记录平台记录输出。

然后,您可以使用SoapUI等工具手动向服务器发送请求,这有助于调试请求。

您需要在构造函数的options数组中将'trace'设置为true,以便启用这些方法。

http://au1.php.net/manual/en/soapclient.getlastrequest.php http://au1.php.net/manual/en/soapclient.getlastresponse.php