我正在尝试设置一个简单的客户端/服务器XMLRPC服务器,但是我在使用参数时遇到了问题。如果我从 fetchClient()方法和 $ client-> call()中取出 $ client_id 参数,代码运行正常。但是,如果我包含它,服务器将返回“调用参数与签名不匹配”
控制器代码:
class XmlrpcController extends Zend_Controller_Action
{
public function init()
{
$this->_helper->layout->disableLayout();
$this->_helper->viewRenderer->setNoRender();
}
public function indexAction()
{
$server = new Zend_XmlRpc_Server();
$server->setClass('App_Service_Customer','customer');
echo $server->handle();
}
}
应用/服务/ Customer.php:
class App_Service_Customer
{
/**
* @param int $client_id
* @return string
*/
public function fetchCustomer($client_id)
{
return 'john doe';
}
}
客户端测试代码:
$client = new Zend_XmlRpc_Client('http://localhost/xmlrpc');
echo $client->call('customer.fetchCustomer', 1);
有什么想法吗?
答案 0 :(得分:1)
否认。我想出了要输入的正确参数:
echo $client->call('customer.fetchCustomer', array(array('client_id' => 1)));