javascript 中的 Zeromq 服务器,不可能吗?

Zeromq server in javascript, not possible?

我正在尝试在 javascript 中创建一个界面,以使用 zeromq 与机器人(用 C 语言编写)进行对话和控制。我是 zeromq 的新手,很难在 javascript 中找到一个使用 zeromq 的库,而在许多其他语言中都有一个很好的库。我发现的两个小型库使用了使用 flash 或 web 套接字的变通方法,这使得它变得更加复杂。两者都 'in beta' 并被遗弃。

我们使用html/javascript的原因是因为它可以在许多平台上使用,但javascript似乎不​​是为这种工作而设计的?我觉得我做错了人,因为我发现这方面的信息很少。有人告诉我使用 CZMQ 和 Zyre,但据我所知,它们不能与 javascript 一起使用?任何帮助或重定向到指南将不胜感激,我已经无法理解并且正在做很少的过程。

如果我理解你的问题,你已经编写了一个 HTML 文件,你可以在浏览器中本地打开它,并且你希望你的浏览器使用 ZMQ 直接与你的机器人通信。

浏览器只有两种连接外部设备或服务的机制:HTTP(普通链接、表单,AJAX)和网络套接字。 ZMQ 必须依赖于网络套接字。可能有一种方法可以让它发挥作用,但这可能不是您理想的设置。通常,您会设置一个单独的 Web 服务器来为您的网页提供服务。然后您使用 websockets、ajax 或普通的 http 调用来连接并将信息发送到您的网络服务器,然后您使用您选择的语言通过 ZMQ 连接到您的机器人。

如果你使用那种方法,那么你确实可以在服务器端使用 javascript 和 ZMQ,使用 node.js。您还可以使用您选择的任何其他服务器端语言来做同样的事情,其中​​大多数都有 ZMQ 绑定。

如您所见,您的另一个选择是使用 HTTP 或网络套接字直接连接到您的机器人。任何一个都可以正常工作,具体取决于您的机器人的具体情况,但它不是我的第一选择。