用Swoole框架实现WebService和远程接口调用RPC
2011-07-04 16:05
731 查看
利用Swoole框架中提供的WebService类和RestClient类,可以很方便地实现Webservice和远程接口调用。
可以用在,网站对外提供API,或者大型网站系统内部不同模块之间接口调用。
代码简洁易懂,支持远程函数调用,面向对象的方法、属性编程
服务器端:
客户端:
可以用在,网站对外提供API,或者大型网站系统内部不同模块之间接口调用。
代码简洁易懂,支持远程函数调用,面向对象的方法、属性编程
服务器端:
<?php require '../../config.php'; require LIBPATH.'/system/WebService.php'; $web = new WebService; //设定可远程调用的客户端IP $web->access_ip[] = '127.0.0.1'; $web->access_ip[] = '192.168.1.102'; //注册函数 $web->reg_func('testme','test'); //注册类 $web->reg_class('world','Foo'); //注册验证方式 $web->reg_auth('rpc_user_check'); //运行 $web->run(); /** * 检测用户是否有权限进行远程调用 * @param $user * @param $pass * @return unknown_type */ function rpc_user_check($user,$getpass) { //这里也可以换成查询数据库表的操作 $passdb['test'] = '123456'; //存在用户,而且密码正确 $passhash = Auth::mkpasswd($user,$passdb[$user]); if(isset($passdb[$user]) and $passhash==$getpass) return true; else return false; } function test($name) { return array('hello','world!'); } class Foo { public $index; function getinfo($param) { return 'my index is '.$this->index.'; param :'.$param; } }
客户端:
<?php require '../../config.php'; import('#web.RestClient'); $server_url = "http://top.com/test/web/rpc.php"; $user = 'test'; $pass = '123456'; $rest = new RestClient($server_url,$user,$pass); //$rest->debug = true; $result1 = $rest->func('testme'); $obj = $rest->create('world'); $obj->index = 'page'; $result2 = $obj->getinfo('delete'); debug($result1,$result2);
相关文章推荐
- 【远程调用框架】如何实现一个简单的RPC框架(三)优化一:利用动态代理改变用户服务调用方式
- 【远程调用框架】如何实现一个简单的RPC框架(五)优化三:软负载中心设计与实现
- 远程调用webservice接口的实现方法
- RPC入门总结(三)RMI+Zookeeper实现远程调用框架
- 用swoole framework 实现远程接口调用RPC
- 使用hadoop中的RPC框架实现远程调用
- 【远程调用框架】如何实现一个简单的RPC框架(二)实现与使用
- 【远程调用框架】如何实现一个简单的RPC框架(四)优化二:改变底层通信框架
- 【远程调用框架】如何实现一个简单的RPC框架(一)想法与设计
- 使用Python的multiprocessing.connections实现远程方法调用(RPC)
- 9.5 远程服务调用框架-远程服务调用协议-RPC基本协议配置
- 使用 RMI + ZooKeeper 实现远程调用框架
- Java 调用C# webservice接口 生成java客户端 实现方式
- android app通过Geth RPC接口实现远程调用
- 使用 RMI + ZooKeeper 实现远程调用框架
- 基于WebService实现远程调用方式的系统间通信
- dubbo+zookeeper 简单实现远程接口调用
- [C#]winForm调用WebService的远程接口
- 调用XFire框架编写的webservice接口的理解