XMLRPC - Python服务器,PHP客户端。没有一致性?

时间:2011-01-17 09:18:52

标签: php python xml-rpc rpc

我目前正在尝试为运行特殊服务的Linux服务器集群构建基于Web的管理界面。这个想法是管理网站可以通过RPC集群来收集信息,执行配置任务等等。

我已经启动并运行了XMLRPC Python Server脚本,并且我已经用PHP编写了一个基本的XMLRPC客户端。这一切都有效,但我遇到了一些严重的问题,试图从方法调用中得到一致的响应 - 有时我会根据我运行的命令输出的详细程度得到一个XML数组,有时候它是一个XML结构,有时它只是一个普通的旧价值。然后我有错误要处理 - 似乎XMLRPC标准有一个故障结构,其中'faultCode'和'faultString'值响应,这很好,因为那很整洁,我可以通过命名键将数据拉出来XML。但是如果错误来自shell本身(例如,如果被调用的命令有一个错误的参数),那么你只得到那个结构,而来自命令的错误必须只是一个普通的XML响应。

如何围绕XMLRPC服务器的各种回复编写强大的Web服务?我真正想做的是每次都使用相同的密钥(returnCode(0 =成功,> 1 =错误),returnValue / s)返回完全相同的XML结构回复。

感谢您的任何建议。

1 个答案:

答案 0 :(得分:1)

可能从现有的XML / RPC客户端开始,让客户端执行协议工作。 Zend Framework中有Zend\XmlRpc,还有fxmlrpc等独立客户端。