如何处理来自两个文件的无效路由

时间:2019-06-08 14:40:24

标签: javascript node.js json express routes

我正在尝试解决一种情况,我想捕获无效路由并在Node中引发一条消息。

我有两个文件,一个用户文件和一个任务文件。如果我碰到不存在的端点/路由,我想在屏幕上显示一条消息,指出这是无效的路由。

我的问题是,我专门添加了一段代码来捕获文件user.js和task.js中的这些无效路由,但是当我在第二条路由(task.js)中搜索有效请求时,从第一个文件(user.js)获得无效的路由错误。这是我在每个文件末尾的两个文件中都有的代码:

//handles invalid route requests (in user.js file)
router.get('*', (req, res) => {
    return res.status(404).send({error: 'Route not found'})
})

//handles invalid route requests (in task.js file)
router.all('*',(req, res) => {
    return res.status(404).json({error: 'Route not found'})
})

仅在一个路由文件中包含这段代码的解决方案吗?例如,此代码应该只出现在task.js文件中,以便它可以检查两个路由文件,直到到达无效的路由大小写为止。

1 个答案:

答案 0 :(得分:0)

所以您使用的是express-js ...我曾经用过它与express-skeleton模块一起在eleele中生成...

您可以在github页面上看到,app.js文件的体系结构是调用所有路由,并在错误路由之后调用。请看看here

在app.js的末尾:

return {
   ...e.payload.doc.data(),
   id: e.payload.doc.id
} as Item;