[TP3.2]轻量级远程调用jsonRPC模式(控制器扩展)

浏览:8234 最后更新:2017-09-10 20:17 分类:控制器 关键字: jsonrpc,远程调用,deeka,jsonrpccontroller
json-rpc是基于json的跨语言远程调用协议,比xml-rpc、webservice等基于文本的协议传输数据格小;相对hessian、java-rpc等二进制协议便于调试、实现、扩展,是非常优秀的一种远程调用协议。目前主流语言都已有json-rpc的实现框架,java语言中较好的json-rpc实现框架有jsonrpc4j、jpoxy、json-rpc。

此版本是基于ThinkPHP3.2的控制器扩展模式。

服务端示例:<?php
namespace Rpc\Controller;
use Think\Controller\JsonRpcController;

class JsonApiController extends JsonRpcController
{
    public function index(){
        return 'Hello, JsonRPC!';
    }
    // 支持参数传入
    public function test($name=''){
        return "Hello, {$name}!";
    }
}
客户端示例:vendor('jsonRPC.jsonRPCClient');
$client = new \jsonRPCClient('http://www.tp.cn/index.php/Rpc/JsonApi');
$result = $client->index();
var_dump($result); // 结果:Hello, JsonRPC!
$result = $client->test('deeka');
var_dump($result); // 结果:Hello, deeka!
评论( 相关
后面还有条评论,点击查看>>