NodeJs - 检查子进程是不是成功启动
Posted
技术标签:
【中文标题】NodeJs - 检查子进程是不是成功启动【英文标题】:NodeJs - Check if child process started successfullyNodeJs - 检查子进程是否成功启动 【发布时间】:2019-05-13 18:56:47 【问题描述】:我有一个脚本Start.js
,它正在使用shelljs
启动另一个脚本Server.js
。
Server.js
包含一个应该在process.env.PORT
运行的快速服务器。
Start.js
应该打印出服务器是否正确启动。
const process = shell.exec(`node Server.js`,
async: true,
env:
PORT: 3000
) as ChildProcess;
// how to detect that server was successfully started?
这个脚本如何检测服务器是否启动成功?
【问题讨论】:
【参考方案1】:您需要在 Server.js 中写入标准输出,并在 exec 回调函数中监听标准输出。
// Shell.js docs
exec('some_long_running_process', function(code, stdout, stderr)
console.log('Exit code:', code);
console.log('Program output:', stdout);
console.log('Program stderr:', stderr);
);
// Example
exec('node Server.js', function(code, stdout, stderr)
console.log('Exit code:', code);
console.log('Program output:', stdout); // could print: 'server up!'
console.log('Program stderr:', stderr);
);
【讨论】:
以上是关于NodeJs - 检查子进程是不是成功启动的主要内容,如果未能解决你的问题,请参考以下文章