2016-07-29 61 views
0

我有一台使用ExpressJS运行本地服务器的Linux机器。通过一个USB-to-RS485-适配器连接两台仪器,该适配器可以通过NodeJS进行控制和更新。我想要做的是显示仪器的实时状态(主要是压力表),并更新一些显示仪表正在测量的当前压力的图表。我已经有了一个运行ExpressJS的服务器,但我不知道如何让节点代码来控制硬件影响状态。我必须运行节点代码服务器端,然后使用socket.io将数据发送到客户端,还是有一些更简单的方法。我对expressJS和webapps是全新的,所以如果你能指出我正确的方向并向我解释它是如何工作的,那将是非常好的。使用ExpressJS连接到服务器的硬件的实时状态

+0

从实时部分来看,socket.io会比express更好,所以你最终应该使用express来提供网页,并且使用socket.io的状态。在检索数据时,您如何首先获取数据?一个简单的设置就是检索它并用socket.io – DrakaSAN

+0

上的新值推送事件。因此,检索数据的方式让我在每次获得压力的新值时触发一个事件。我现在正在使用socket.io,我想我会按照你的建议去做。 –

回答

0

Express是一个构建Web服务器的框架,虽然对于它的功能非常好,但实时并不是它的功能。

相反,socket.io真的非常擅长实时传输。

你应该做的是通过Express,页面连接到socket.io并订阅你的“数据”事件来为你的“状态”页面提供服务。

然后,您只需要检索数据时,使用socket.io发送事件以使数据几乎实时显示在网页上。