応答時間とステータスコードをログに記録してデータベースに送信するミドルウェアを作成しようとしています。ただし、どのイベントを使用すればよいかわかりません。ノードのドキュメントにはcloseイベントがありますが、発生することはありません。endどちらも機能しません。ただし、headerそうですが、ドキュメントが見つかりません。
app.use(function(req, res, next) {
res.on('close', function() {
console.log('close')
})
res.on('end', function() {
console.log('end')
})
res.on('header', function() {
console.log('header')
console.log(res.statusCode)
})
next()
})
起動するだけheaderで、正しいres.statusCodeが返されます。
私の質問:
- なぜ
close発砲しないのですか?なぜheader発砲するのですか? - これは信頼できる方法ですか?