我正在使用node.js和express来处理HTTP请求和响应.通过使用该http.ServerRequest 事件,我可以添加一个钩子并记录HTTP请求.似乎没有类似的事件http.ServerResponse,我想知道如何使用我的服务器发送的一段代码记录所有HTTP响应?
我正在尝试创建一个记录响应时间和状态代码并将其发送到数据库的中间件.但是,我不确定要使用什么事件.在节点的文档中有一个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()
})
Run Code Online (Sandbox Code Playgroud)
只有header触发,它确实返回正确的res.statusCode.
我的问题:
close解雇?为什么要header解雇?