我使用的是带有express框架的节点0.6.19。我在日志中看到了一些奇怪的事情。首先,我为(createWriteStream
)传入请求创建了一个日志。我使用了express语法,通过将请求管道传输到日志中
var logFile = fs.createWriteStream('log.log', {
"flags": "a"
});
app.configure(function() {
app.use(express.logger({
stream: logFile
}));
app.use(express.bodyParser());
app.use(express.cookieParser());
app.use(express.methodOverride());
return app.use(app.router);
});
当我点击一条快速路线时,似乎有传入请求的副本,比如:
app.get('/', routes.index);
其次,在我的一些路由上,我在数据库中进行用户查找,并通过相同的createWriteStream
方法将用户id记录到另一个文件中。当我做时
logFile.write(user_id + 'n');
我得到重复的user_id。查询本身没有问题,它告诉我createWriteStream
方法发生了什么。
如果使用浏览器调用应用程序,则可能会由于favicon
请求而获得重复输出。您可以通过使用fiddler或其他HTTP调试代理拦截请求来轻松验证这一点,具体取决于您的操作系统。