我有一个脚本 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?
这个脚本如何检测服务器是否成功启动?
最佳答案
您需要在 Server.js 中写入 stdout,并在 exec 回调函数中监听 stdout。
// 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);
});
关于javascript - NodeJs - 检查子进程是否成功启动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53746941/