1

モジュール handler.js を Express.js ミドルウェアとして作成するとします。

var info = {};

infohandler.setinfo = function(i){ info[i] = Math.random(); }
infohandler.saveinfo = function(){ fs.writeFileSync("info.json", info); }

function handler(req, res, next){ // here are some operation call to infohandler according to req. }

module.exports = handler;

そして、app.js にこの handler.js をインポートします。

var handler = require("handler");

サーバーがシャットダウンする直前に、いくつかの情報をファイルに保存したいと考えています。これどうやってするの?

4

1 に答える 1

2

イベントprocess.onにバインドするために使用します。exitこのイベントは、正常なシャットダウン時に呼び出されます。

process.on('exit', function () {
    // your clean up code
});

特定のシグナル (kill(1) を使用してデフォルトで送信される SIGTERM など) をキャッチしたい場合は、シグナルの名前にバインドします。

process.on('SIGTERM', function () { /* ... */ });

これにより、デフォルトのアクション(シャットダウン)が無効になることに注意してください。そこに手動で電話をかけるようにしてくださいprocess.exit

于 2015-05-26T22:43:04.480 に答える