kamiorz/lumen-hprose

为 lumen 5.x 提供的 Hprose 客户端/服务器提供商

dev-master 2016-12-25 16:16 UTC

This package is auto-updated.

Last update: 2024-09-14 03:30:53 UTC


README

Hprose https://github.com/hprose

HPROSE 是一个高性能远程对象服务引擎。

它是一个现代、轻量级、跨语言、跨平台、面向对象、高性能的远程动态通信中间件。它不仅易于使用,而且功能强大。

安装

# composer
composer require kamiorz/lumen-hprose dev-master

配置

# config/hprose.php
# bootstrap/app.php
# include the provider
$app->register(KamiOrz\LumenHprose\HproseServiceProvider::class);

# include the alias
class_alias('TKamiOrz\LumenHprose\HproseClientFacade', 'RpcClient');
class_alias('TKamiOrz\LumenHprose\HproseServerFacade', 'RpcServer');
class_alias('TKamiOrz\LumenHprose\HproseServiceFacade', 'RpcService');

# Lumen config
sudo cp vendor/kamiorz/lumen-hprose/config/hprose.php config

使用方法

Hprose 客户端

use RpcClient as Rpc;
$result = Rpc::someServerMethod($params);

Hprose 服务器

Route::any('/api', function() {
    $server = app('RpcServer');
    
    // Hprose support XmlRPC and JsonRPC
    // if want support XmlRpc
    $server->addFilter(new Hprose\Filter\XMLRPC\ServiceFilter());
    // if want support JsonRpc
    $server->addFilter(new Hprose\Filter\JSONRPC\ServiceFilter());
    
    $server->addInstanceMethods(new \App\Services\SomeHprosePublishServices());
    $server->start();
});

中间件设置

# app/Http/Middleware/VerifyCsrfToken.php
[...]
protected $except = [
    'api' // OR 'api*'
];

API 参考

请参考 https://github.com/hprose/hprose-php