【纯问题,无需代码】nodejs用tcp接收到数据后,怎么把数据用到echarts上呢

用的nodejs的net模块,接收到服务器数据并且成功转化成数组后了(服务器是c++写的),想显示到echarts上面,接下来该怎么做呢?
(主要就是从原本的buffer数据利用到echars的这个过程不清楚)
因为之前模拟echarts,显示我最早用的ajax轮询,直接编的数据存在json文件里读取就是了,现在不知道还能不能这样做。
100ms刷新一次,有没有可靠的方法。

ps:数据是800个点纵坐标,暂时不用考虑历史数据问题。目前知道一种写入文件方法,但是会覆盖原来内容,怕报错,有没有增加文件内容不覆盖的?那样倒是可以一试。
还有websocket方法似乎最好,只是要跟c++的服务器建立握手(是个仪器设备),目前不好接触到。

阅读 3.3k
3 个回答

先要判断是使用 Ajax 轮询是否合适,一般来说 Ajax 轮询适合对显示时效性要求不强的情况,如果数据变化周期和轮询周期差不多就更合适了。

但如果数据变化慢,同时显示时效性强时,使用 Ajax 轮询并不是一个好的选择。这时可以考虑使用长论询、 SSE 或 WebSocket。

可以按照你之前的写法保持不变,把取到的数据写到json 文件中,你前端就不用改;但是这个得考虑一下,每次取到的数据是增量数据还是全量数据;需要修改json文件,;另外,你这个数据要查询多久的,历史数据需要保存么;最后是实时性的问题,

感谢楼上回答。最终我用的是nodejs的net模块接收数据,然后用socket.io发送给客户端。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题