1

尝试运行 Codeigniter 用户指南 XML RPC 示例代码。

这是代码

xmlrpc_client.php

<?php

 class Xmlrpc_client extends CI_Controller {

function index()
{
    $this->load->helper('url');
    $server_url = site_url('xmlrpc_server');

    $this->load->library('xmlrpc');

    $this->xmlrpc->server($server_url, 80);
    $this->xmlrpc->method('Greetings');

    $request = array('How is it going?');
    $this->xmlrpc->request($request);

    if ( ! $this->xmlrpc->send_request())
    {
        echo $this->xmlrpc->display_error();
    }
    else
    {
        echo '<pre>';
        print_r($this->xmlrpc->display_response());
        echo '</pre>';
    }
}}?>

xmlrpc_server.php

<?php

 class Xmlrpc_server extends CI_Controller {

function index()
{
    $this->load->library('xmlrpc');
    $this->load->library('xmlrpcs');

    $config['functions']['Greetings'] = array('function' => 'Xmlrpc_server.process');

    $this->xmlrpcs->initialize($config);
    $this->xmlrpcs->serve();
}


function process($request)
{
    $parameters = $request->output_parameters();

    $response = array(
                        array(
                                'you_said'  => $parameters['0'],
                                'i_respond' => 'Not bad at all.'),
                        'struct');

    return $this->xmlrpc->send_response($response);
}}?>

在此之后,我像这样运行网址。

远程服务器的 ip/xmlrpc_client

(我使用 .htaccess 删除了我的 index.php,不需要输入)

结果是这样的,

没有收到来自远程服务器的“200 OK”响应。(HTTP/1.1 404 未找到)

如果我运行服务器代码, remoteserver 的 ip/xmlrpc_server 它会这样说。

此 XML 文件似乎没有任何与之关联的样式信息。文档树如下所示。

意思是,

$this->xmlrpc->send_request()

此请求已失败

并回响

回声 $this->xmlrpc->display_error();

知道问题是什么吗?

哦,我还有一个问题。

在我使用这个 codeigniter xmlrpc 类之前,我是否必须安装 xmlrpc php 扩展?

4

1 回答 1

0

解决了!问题是远程服务器的防火墙。

于 2013-07-18T06:32:33.420 回答