如何在使用RPC时添加方法?

时间:2018-01-24 11:14:19

标签: javascript rpc

我正在使用远程过程调用,我正在使用名为node-jet的库。我可以添加方法并可以远程运行它们,但我想询问我是否也可以远程添加方法?我向图书馆开发人员提出了这个问题,但无法得到答案,也许有人在这帮助我。

fn是我的职能,同行是我的同伴

   var method = new jet.Method(`${this.basePath}` + '/methods/' + method)
  .on('call', fn) //function (args) {})
  peer.add(method)

1 个答案:

答案 0 :(得分:1)

据我了解,

您正在寻找双向 RPC,并且当前正在尝试使用node-jet(可能提供也可能不提供)来实现它。这意味着您可能必须将自己的解决方案作为传输工具投放到node-jet之上。

相反,您可以尝试Octopus,作为RPC层...可以是独立的,也可以是在node-jet之上的。

我建立了它来解决socket.io和node子进程的类似用例。希望它也会对您有帮助!

要与node-jet一起使用,您需要构建一个小型自定义适配器以集成node-jet的推送协议。有关如何映射socket.io,websockets等的示例,请参见回购中的 stockTransports.js 文件。

只需要两个映射:

return {
  onRecv: // recieve function wrapper
  send:   // send function wrapper
}