NodeJs - Проверьте, успешно ли запущен дочерний процесс - PullRequest
0 голосов
/ 12 декабря 2018

У меня есть скрипт Start.js, который запускает другой скрипт Server.js, используя shelljs.

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 Ответ

0 голосов
/ 12 декабря 2018

Вам нужно будет написать в stdout в Server.js и прослушать stdout в функции обратного вызова 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);
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...