12 Star 36 Fork 10

feimat / rpc for nodejs

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README

nodejs实现的rpc(基于koa实现),以网页聊天室为示例。 支持所有pc与手机浏览器 支持所有app内部webview 支持自动重连 支持心跳处理 支持双向rpc与单向通信 支持协程功能。欢迎使用与反馈bug。技术交流qq群:339711102 项目地址 https://git.oschina.net/feimat/qiyi

使用教程: git clone https://git.oschina.net/feimat/qiyi.git cd qiyi/ npm install 然后 node index.js

网页 http://localhost:3001/ 即可访问聊天。

发送rpc请求(这里演示客户端发送,服务器端发送参考示例):

var rpc_client = new rpcClient('http://‘+host);
var data = "hello";
rpc_client.emit('chat', data,{
                  "success": function(response) {
                      console.log(response)
                  },
                  "timeout_time": 4000,
                  "timeout_cb": function() {
                  },
                  "error": function() {
                  }
              });

接受rpc请求(这里演示服务器端接收,客户端接受参考示例):

// next:沿用koa个人感觉没必要暴露
// ctx: 对端socket上下文信息
// message: 接收到的消息
// cb: 回调函数 cb(data) 表示返回data给发送端
app.io.route('chat', function* (next, ctx, message,cb) {
     cb("server recive "+message+" and start send to other people ");
     var send_suc_num = 0; // 成功收到消息的聊天成员
     for (var socket in all_sockets) {
        // 服务器端向客户端发送rpc
        app.emit(socket, 'chat', message,{
                  "success": function(response) {
                      console.log("suc recive num:"+send_suc_num);
                  },
                  "timeout_time": 4000,
                  "timeout_cb": function() {
                  },
                  "error": function() {
                  }
              });
     }  

空文件

简介

nodejs实现的rpc(基于koa实现),以网页聊天室为示例。 支持所有pc与手机浏览器 支持所有app内部webview 支持自动重连 支持心跳处理 支持双向rpc与单向通信 支持协程功能。 展开 收起
NodeJS
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
NodeJS
1
https://gitee.com/feimat/qiyi.git
git@gitee.com:feimat/qiyi.git
feimat
qiyi
rpc for nodejs
master

搜索帮助

14c37bed 8189591 565d56ea 8189591