繁体   English   中英

获取Node.js服务器以触发python脚本

[英]Get nodejs server to trigger a python script

我有一个在Raspberry Pi 3 B +上运行的node.js服务器。 (我正在使用节点,因为我需要运行良好的蓝牙库的功能)。

一旦节点服务器从蓝牙设备接收到一条消息,我希望它触发事件/命令/调用,该事件/命令/调用将在同一设备上运行。

做这个的最好方式是什么? 我研究了产生子进程并在其中运行脚本的过程,但这似乎很麻烦……此外,我是否应该在它们之间建立套接字并通过它进行数据流传输? 我想这经常做,共识解决方案是什么?

运行子进程就是您运行python脚本的方式。 这就是从nodejs或任何其他程序(除了python程序)中执行此操作的方式。

在python脚本和nodejs程序之间进行通讯的选项有很多。 最简单的是stdin / stdout,它在创建子进程时自动为您设置,但是您也可以为nodejs应用提供一个本地http服务器,python脚本可以与之通信,反之亦然。

或者,在两者之间设置常规插座。

如您现在在注释中指示的那样,如果您的python脚本已经在运行,那么您可能想在nodejs应用中使用本地http服务器,并且只要有一些脚本,python脚本就可以向该本地http服务器发送一个http请求。它想要传递给nodejs应用程序的数据。 或者,如果您主要希望数据沿相反的方向流动,则可以将http服务器放在python应用程序中,然后让nodejs服务器将数据发送到python应用程序。

如果您想要良好的双向功能,则还可以在两者之间建立一个socket.io连接,然后可以随时轻松地以任何一种方式发送消息。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM