我有一个nodejs服务器,它用spawn启动一个python脚本。python脚本中有一些检查可以抛出错误,实际上它应该有这些错误检查并返回给服务器。但是当抛出错误时,node中的close事件最终被触发,nodejs服务器完全停止。我似乎不知道如何防止派生进程退出并关闭服务器(只是接受并处理来自python脚本的错误)。有人能带我去吗?或者我应该每次都重新启动服务器吗?
spawn
close
jckbn6z71#
当Python脚本中抛出错误时,Nodejs服务器正在关闭,因为它正在等待exit脚本。要防止Nodejs服务器关闭,可以使用child_process.on('exit')事件来处理错误。在事件处理程序中,您可以捕获错误,然后对其执行某些操作。
Python
Nodejs
exit
child_process.on('exit')
const { spawn } = require('child_process'); const pythonChild = spawn('python3', ['your_script.py']); pythonChild.on('exit', (code) => { if (code != 0) { console.error(`Error in Python script: ${code}`); } });
1条答案
按热度按时间jckbn6z71#
当
Python
脚本中抛出错误时,Nodejs
服务器正在关闭,因为它正在等待exit
脚本。要防止
Nodejs
服务器关闭,可以使用child_process.on('exit')
事件来处理错误。在事件处理程序中,您可以捕获错误,然后对其执行某些操作。