1

我正在使用 Zend 1.10 的 XML-RPC 客户端库向另一台服务器发出 XML-RPC 请求。我必须调用的方法之一使用i8(又名ex:i8)类型,即扩展大整数。Zend 支持这一点(参见http://framework.zend.com/apidoc/1.10/Zend_XmlRpc/Value/Zend_XmlRpc_Value_BigInteger.html)。但是,每当我尝试对其进行几次调用时,都会出现异常(我认为是在它联系服务器之前)。

exception 'Zend_XmlRpc_Client_FaultException' with message 'Failed to parse XML-RPC request: Unknown type: i8' in /usr/local/myprog/libs/zend/library/Zend/XmlRpc/Client.php:370
Stack trace:
#0 /usr/local/myprog/client.php(102): Zend_XmlRpc_Client->call('methodCall', Array)
#1 {main}

通过getLastRequest()在客户端对象上使用,我可以看到它要发送的 XML 是这样的:

?xml version="1.0" encoding="UTF-8"?>
<methodCall><methodName>methodCall</methodName><params><param/><param/></params></methodCall>

看起来 Zend 没有将名称空间添加到 XML 中。我怎样才能解决这个问题?如何使用 // 参数进行 XML-RPCi8方法ex:i8调用BigInteger

4

1 回答 1

0

作为 i8 支持的前维护者和原作者,Zend_XmlRpc我不得不承认这对我来说似乎是一个错误。目前没有办法告诉 XML/RPC 客户端添加正确的命名空间声明。

于 2012-11-25T16:13:22.357 回答