Подтвердить что ты не робот

Выключатель остановки Express.js

В Express.js, есть ли способ установить функцию обратного вызова, которая будет выполняться, когда приложение отключится?

4b9b3361

Ответ 1

Вы можете использовать node.js основной процесс 'exit' event следующим образом:

process.on('exit', function() {
  // Add shutdown logic here.
});

Конечно, цикл основного события прекратит работу после возврата функции выхода, поэтому вы не можете планировать какие-либо таймеры или обратные вызовы из этой функции (например, любой ввод-вывод должен быть синхронным).

Ответ 3

Если вам нужно получить доступ к чему-то в текущей области, вы можете bind() как в этом ответе: fooobar.com/info/35124/..., но вы можете привязать this.

function exitHandler(options, err) {
    if (options.cleanup) console.log('clean');
    if (err) console.log(err.stack);
    if (options.exit) process.exit();
}

process.on('exit', exitHandler.bind(null,{cleanup:true}));