PHP中使用XML-RPC构造Web Service简单入门

转载 2006年05月30日 00:30:00

   fclose($fp);
   return $contents;
}

//构造连接RPC服务器端的信息
$host  = 'localhost';
$port  = 80;
$rpc_server = '/~heiyeluren/rpc_server.php';

//把需要发送的XML请求进行编码成XML,需要调用的方法是rpc_server,参数是get
$request = xmlrpc_encode_request('rpc_server', 'get');

//调用rpc_client_call函数把所有请求发送给XML-RPC服务器端后获取信息
$response = rpc_client_call($host, $port, $rpc_server, $request);

//分析从服务器端返回的XML,去掉HTTP头信息,并且把XML转为PHP能识别的字符串
$split = '<?xml version="1.0" encoding="iso-8859-1"?>';
$xml =  explode($split, $response);
$xml = $split . array_pop($xml);
$response = xmlrpc_decode($xml);

//输出从RPC服务器端获取的信息
print_r($response);

?>


大致我们上面的例子就是提交一个叫做rpc_server的方法过去,参数是get,然后获取服务器端的返回,服务器端返回的XML数据是:

<?xml version="1.0" encoding="iso-8859-1"?>
<methodResponse>
<params>
 <param>
  <value>
   <string>This data by get method</string>
  </value>
 </param>
</params>
</methodResponse>

那么我们再通过xmlrpc_decode函数把这个XML编码为PHP的字符串,我们就能够随意处理了,整个Web Service交互完成。


[  结束语 ]

不管是XML-RPC也好,SOAP也罢,只要能够让我们稳定、安全的进行远程过程的调用,完成我们的项目,那么就算整个Web Service就是成功的。另外,如果可以的话,也可以尝试使用PEAR中的XML-RPC来实现上面类似的操作,说不定会更简单,更适合你使用。

简单的使用XML-RPC进行Web Service交互就完成了,部分代码参考PHP手册,想获取详细信息建议参考手册,如果文章有不正确,请指正。

相关文章推荐

PHP中使用XML-RPC构造Web Service简单入门

Web Service就是为了异构系统的通信而产生的,它基本的思想就是使用基于XML的HTTP的远程调用提供一种标准的机制,而省去建立一种新协议的需求。目前进行Web Service通信有两种协议标准...

JAX-WS一个很简单的RPC风格的Web Service同步调用

Web Service技术,无疑会越来越被广泛应用的,可以非常好的实现异构应用程序之间的相互通信。JAX-WS是SUN推出的一种实现Web Service的工具。下面是我学习用JAX-WS实现的一个很...
  • leon709
  • leon709
  • 2011年12月26日 13:51
  • 5359

使用axis 开发web service的build.xml

build.xml build.xml文件非常重要,它将引导您一步一步地实现web服务,从Java接口开始,实现业务逻辑,然后打包为一个标准war文件。因此,我们将整个的编译脚本拷贝如下:     ...

回顾篇:使用XML/HTTPS接入eBay Web Service

eBay Web Service允许用户创建自己的应用程序来

JAX-WS集成Web工程的Web Service的创建和发布简单入门(1)

首先, 为了我们这个WS的实验能够顺利的完成,最好能到官网上下载到JAX-WS工具的完整版。下载到的是一个jar文件,需要在Windows命令行下运行jar命令解压安装的,比如我这边有个JAXWS2....
  • leon709
  • leon709
  • 2011年12月28日 09:44
  • 13279

JAX-WS集成Web工程的Web Service的创建和发布简单入门

首先, 为了我们这个WS的实验能够顺利的完成,最好能到官网上下载到JAX-WS工具的完整版。下载到的是一个jar文件,需要在Windows命令行下运行jar命令解压安装的,比如我这边有个JAXWS2....

使用XFire开发Web Service客户端完整入门教程

使用XFire开发Web Service客户端完整入门教程 本Blog所有内容不得随意转载,版权属于作者所有。如需转载请与作者联系( fastzch@163.com )。 未经许可的转...

web service与远程调用(RPC)的区别:

首先客户端从服务器的到WebService的WSDL,同时在客户端声称一个代理类(Proxy Class) 这个代理类负责与WebService服务器进行Request 和Response 当...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:PHP中使用XML-RPC构造Web Service简单入门
举报原因:
原因补充:

(最多只允许输入30个字)