応答時間とステータスコードをログに記録してデータベースに送信するミドルウェアを作成しようとしています。ただし、どのイベントを使用すればよいかわかりません。ノードのドキュメントには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
発砲するのですか? - これは信頼できる方法ですか?