json-rpc-lite
very simple jsonrpc base on express
Install
npm i json-rpc-lite -S
Usage
server
加载处理模块
const JSONRPC = require('json-rpc-lite');
JSONRPC.loadRouter(path.join(__dirname, 'rpc/')); // 自动加载目录中 xxx_rpc.js文件 xxx为模块名 文件中 函数名为yyyRpc,其中yyy为导出的模块方法,非此格式函数 无法rpc调用
example:connector_rpc.js
var service = moduleexports = { logger; } { logger; let checkParam = ; if !checkParamvalid let errMsg = checkParamerrors0message; ; return; ; return; }
input: argument cb: callback(error, returnValue)
route
baseon express
var inputSchema = "type": "object" "properties": "id": "type": "string" "module": "type": "string" "method": "type": "string" "args": "type": "object" "required": "id" "module" "method" "args";var service = moduleexports = invokeAction: method: 'POST' { logger; var checkParam = ; if !checkParamvalid let errMsg = checkParamerrors0message; logger; res; return; try JSONRPC; catch error logger; res; return; } ;
client
jsonrpcClientPool;
增加debug_server 只能目标地址 以渠道invokeWithHost
JsonRpc
See example.
License
The MIT License