我正在尝试创建一个在服务器关闭之前触发的close事件。
为此我创建了以下内容:
var express = require('express');
var app = express();
var http = require('http').Server(app);
var listenTo = require('./config/port.json')["port"];
http.listen(listenTo, function () {
console.log('listening on *:' + listenTo);
});
http.on('close', function (event) {
console.log('closed');
});
然而,这只是关闭服务器。
所以我的问题是如何使用http
答案 0 :(得分:3)
您正在关闭服务器,而不是侦听事件。
而不是:
http.close(function (event) {
console.log('closed');
});
你应该用这个:
http.on('close', function (event) {
console.log('closed');
});
比较一下:
用这个:
请注意,如果要处理关闭服务器应用程序的事件(终止进程)而不是关闭http
服务器(关闭打开端口),那么您需要处理不同类型的事件,例如:
process.on('SIGINT', function () {
console.log('SIGINT caught');
// if you want to exit then call:
process.exit();
});