您可能知道,ZeroRPC 文档很少。我无法在 Python 服务器和 Node 客户端之间进行流式传输。
这是Python方法:
@zerorpc.stream
def PublishWhaterver(self, some_args):
yield "love"
yield "stack"
yield "overflow"
这是节点调用:
export const tryStream = () => {
connectedZerorpcClient.invoke('PublishWhatever', (error, res, more) => {
console.log('STREAM', res, more);
});
};
此代码将记录“STREAM love”,然后什么也不做。
所以这是我的问题:
- 在 Python 服务器代码中,我是否应该
PublishWhatever
使用相关的 args 进行调用以产生附加值? - 在 Node 客户端中,当有更多数据时,我应该调用一些递归函数吗?
我试图实现的是一个 Pub/Sub 系统,但现在似乎只存在于 Python 服务器和 Python 客户端,没有 Node 示例。
主页上的示例和测试也不相关,它显示了如何在invoke
调用方法时流式传输已经存在的数组。这里的消息是在一些繁重的计算过程中生成的,我希望服务器能够告诉客户端“这里,一些数据已经准备好”并且永远不会断开连接。