gpt4 book ai didi

javascript - 如何设置Node.js错误处理?

转载 作者:行者123 更新时间:2023-12-03 08:50:10 24 4
gpt4 key购买 nike

我有节点7.8.0,并且已经阅读Node.js Best Practice Exception Handling

我仍然似乎无法理解node.js中的错误处理。

对于我的http,我有

server.on('error', () => console.log('Here I should be replacing
the Error console.'));

对于 404我有此代码
app.use((req, res, next) => {
let err = new Error('Not Found');
err.status = 404;
next(err);
});
app.use((err, req, res) => {
res.status(err.status);
res.render('error');
});

404被捕获,它创建Error对象,然后根据需要通过正确呈现错误 View 进行处理。但这还会将错误日志抛出到我的控制台,我不知道这是从哪里来的以及如何停止它。

我想使用自己的错误处理方式,并且从不真正将404之类的错误写入控制台。

我尝试过但似乎不起作用的代码。
var server = http.createServer(app);
const onError = () => console.log('Here I should be replacing the Error console.');
server.on('error', onError);
server.on('uncaughtException', onError);
process.on('uncaughtException', onError);

最佳答案

我不确定它如何呈现错误 View ,因为错误处理程序仅在传递3个参数时需要4个参数。这就是Express可以将错误处理程序与常规路由处理程序(记录为here)区分开的方式。

尝试以下方法:

app.use((err, req, res, next) => {
res.status(err.status);
res.render('error');
});

关于javascript - 如何设置Node.js错误处理?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43176848/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com