我一直在努力将数据从Flask推送到Javascript,主要是通过修改此处的代码:https://github.com/clebio/flask-d3
现在我尝试从COM端口读取数据并将其通过Flask传递给Javascript。我在使用PySerial之前已经做了一些,但我不确定将它合并到Flask中的正确方法。
我觉得很自然地实现了一些东西,每个请求都打开了端口,读取了一行,然后关闭了。
这不是很有效,所以理想情况下我可以打开COM端口一次,当Flask收到来自客户端的请求时运行readline,并且只有在收到明确指令时才关闭。我怀疑这涉及到线程,但这不符合我的经验。 有什么想法吗?
答案 0 :(得分:2)
我使用Tornado为Arduino + Raspberry Pi项目做了类似的事情:
https://github.com/lilspikey/train
基本上我会运行一个单独的线程来读取串口,然后解码数据,然后通过websockets作为JSON数据发送。
你可能会做类似的事情。只需存储您在某处读取的数据,以后可以通过Flash应用程序读取。这可能是一个简单的内存数据结构(需要线程安全)或者像将其写入数据库一样复杂。您需要确保在Flash应用程序读取旧数据时将其删除,但这将是它的关键。