我在快递应用上有这个随机错误:
_http_server.js:192
throw new RangeError(`Invalid status code: ${statusCode}`);
^
RangeError: Invalid status code: 0
at ServerResponse.writeHead (_http_server.js:192:11)
at ServerResponse.writeHead (/project-folder/node_modules/express-session/node_modules/on-headers/index.js:55:19)
at ServerResponse._implicitHeader (_http_server.js:157:8)
at ServerResponse.OutgoingMessage.end (_http_outgoing.js:573:10)
at writeend (/project-folder/node_modules/express-session/index.js:257:22)
at Immediate.onsave [as _onImmediate] (/project-folder/node_modules/express-session/index.js:325:11)
at processImmediate [as _immediateCallback] (timers.js:383:17)
我尝试通过做这样的事情来解决它而没有运气:
app.use(function(req, res, next) {
req.on("end", function() {
if (res.statusCode < 100 && res.statusCode >= 600) {
res.status(500);
}
});
next();
});
我不知道在哪里找到错误或至少放一个try catch,错误是随机的,跟踪不是很明确。
欢迎任何帮助,谢谢!
答案 0 :(得分:0)
在我在localhost上托管开发和测试的两个项目之间切换时,我看到了类似的错误。在浏览器中手动删除localhost的cookie解决了我的问题。 我用你的功能找出来了。打印出所有请求的req.headers使我意识到在localhost上的不同项目之间切换时cookie是持久的。