我使用名为request
(https://www.npmjs.com/package/request)的模块在我的应用程序上执行一系列http请求。现在我正在尝试向其添加日志记录功能,但似乎无法弄清楚如何从请求模块捕获事件。我可以这样做事件捕获:
var request = require('request');
request('http://www.stackoverflow.com').on('request', function (data) {
console.log(data.method + ":" + data._headers.host);
}).on('response', function (data) {
console.log("Status: " + data.statusCode);
});
这将产生
的输出$ node test.js
GET:www.stackoverflow.com
GET:stackoverflow.com
Status: 200
如何在request()调用之后捕获事件而不指定它?理想情况下,我只需要request
模块和其他文件,其中包含请求事件的所有侦听器,并开始使用request
而不必担心事件处理。因此,最终结果将在代码文件中看起来像:
var request = require('request');
var requestLogger = require('reqLogger')(request);
答案 0 :(得分:0)
根据request
readme,至少有几种不同的方法可以从request
获取调试信息。特别是第三个解决方案(使用request-debug
)似乎可以让您完全了解您当前正在尝试做的事情。