首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >节点js表示错误处理中间件不识别4个元素

节点js表示错误处理中间件不识别4个元素
EN

Stack Overflow用户
提问于 2022-05-12 11:18:43
回答 2查看 329关注 0票数 0

我正在尝试创建一个错误处理中间件,正如您在创建

代码语言:javascript
复制
 app.use((err,req,res,next) => {...}) 

块我的IDE被自动识别为3参数中间件。我不能让它成为错误的下一个中间件。我想--也许IDE错了--索引了那个块--并试图运行它,而在运行express时,无法识别一个错误处理中间件。

我将" app.use“添加到我的server.js中(与app.js相同),并在听录音之前添加最后一个位置的app.use。

我使用的是最新的快车: 4.18.1

任何帮助,在找到一个解决方案将是伟大的!

非常感谢。

EN

回答 2

Stack Overflow用户

发布于 2022-05-12 12:47:46

在所有路由方法之后添加这两种方法:

代码语言:javascript
复制
// 404 not found error
app.get('*', (req, res) => {
    res.status(404).send('<h1>error 404 not found</h1>');
})

// 500 server error
app.use((error, req, res, next)=>{
    if(error){
        res.send('500 OOPS :( Something went wrong... Please try again. ')
    }
})
票数 1
EN

Stack Overflow用户

发布于 2022-05-15 14:06:34

弄明白了!

问题是我在"server.js“中添加了”错误处理中间件“,它应该在相关控制器的placeholder.routes.js中。

在我添加了他附加的代码之后,abdurrahim的答案确实帮了我的忙,我看到它捕获了错误,而从技术上讲,"500服务器错误“是一个错误处理中间件。

因此,我在路由文件中添加了以下代码,并设法处理了抛出的不同错误。

谢谢一堆人!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72214578

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档