我正在开发一个系统,通过Meteor应用程序控制远程机器(连接到投影仪和其他一些硬件).目前,我们正在使用用C++编写的本土DDP客户端来实现这一目标,但这种方法并不像我想的那样灵活:
所以我想要用JavaScript重写C++应用程序的Meteor部分.理想情况下,我希望有一个特殊的客户端(称之为headless,类似于server和client):
如果这个客户端不包含任何实际代码,只是一段引导代码,那就更好了.引导程序将从服务器下载实际的应用程序代码,并在更新服务器时重新下载它,其方式与HTML客户端相同.这会使更新变得更容易,因为我们可以假设服务器和客户端始终运行相同的版本.
这样的事情存在吗?如果没有,如果没有不合理的努力,我能有多接近?搜索"流星无头客户端"和"流星节点客户端"对我没有帮助,我能找到的唯一有点相关的问题没有得到很好的解答.
小智 4
您应该能够通过使用meteor-desktop包构建远程无头客户端来使其工作。
https://www.npmjs.com/package/meteor-desktop#architecture
在 Electron 应用程序中,有两个进程在您的应用程序中运行。所谓主进程和渲染进程。主进程只是在node中执行的JS代码,渲染器是Chromium进程。在此集成中,您的 Meteor 应用程序在渲染器进程中运行,而您的桌面特定代码在主进程中运行。他们通过 IPC 事件进行通信。基本上,桌面端将其 API 作为 IPC 事件侦听器发布。在 Meteor 代码中,调用它就像 Desktop.send('module', 'event'); 一样简单。
这会给你: