将ZeroMQ从浏览器连接到服务器

问题描述 投票:0回答:1

我正在尝试让ZeroMQ在我的Web应用程序中正常工作。在前端,我正在使用JSZMQ库,该库应该在浏览器中工作(我知道大多数库都不能)。在Python后端,我正在使用zmq。问题是我尝试的所有协议都抛出错误。如果我尝试使用TCP,如预期的那样,浏览器将抛出一个错误消息,提示“不支持的传输”。

根据this SO question,当协议为“ ws://”时,JSZMQ应该可以工作。当我尝试此操作时,服务器在运行它时立即引发“不支持协议”错误。这是我的代码:

客户:

import * as zmq from 'jszmq'

const socket = new zmq.Pull()
socket.connect('ws://127.0.0.1:3000')
socket.on('message', msg => console.log(msg))

服务器:

import zmq

context = zmq.Context()
sock = context.socket(zmq.PUSH)
sock.bind('ws://127.0.0.1:3000') # This is what throws the error
sock.send('hello')

如果有问题,我将对服务器执行多处理,将zmq对象作为全局对象,因为它无法序列化并且不能作为参数传递给函数。

为什么这不起作用?

javascript python multiprocessing zeromq
1个回答
0
投票

Python zmq库仅不支持ws协议。我需要找到一个可以使用的库,所以我想这需要另一个问题。

© www.soinside.com 2019 - 2024. All rights reserved.