Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
client
example
parse
server
test
.eslintignore
.eslintrc
.gitignore
.travis.yml
LICENSE
Makefile
README.md
index.js
package.json

README.md

polix-rpc

rpc plugin for polix

Travis

架构图

polix-rpc

Get Start

Kirito File

# test

service testService {
  method ping (reqMsg, resMsg)
}

struct reqMsg {
  @1 age = Int16;
  @2 name = Text;
}

struct resMsg {
  @1 age = Int16;
  @2 name = Text;
}

Server

'use strict';

const pRPC = require('polix-rpc');
const path = require('path');
const kiritoProto = './protocol/test.kirito';
const server = new pRPC.Server();
const proto = pRPC.load(path.join(__dirname, kiritoProto));

function test(call, cb) {
  cb(null, {age: call.age, name: call.name});
}

server.addKiritoService(proto.testService, {ping: test});

server.listen(10003);

Client

'use strict';

const pRPC = require('polix-rpc');
const path = require('path');
const kiritoProto = './protocol/test.kirito';
const proto = pRPC.load(path.join(__dirname, kiritoProto));
const client =  new pRPC.Client({host: 'localhost', port: 10003}, proto.testService);

client.ping({age: 23, name: 'Ricky 泽阳'}, function (err, result) {
  if (err) {
    throw new Error(err.message);
  }
  console.log(result);
});

Author

polix-rpc © Ricky 泽阳, Released under the MIT License.