首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在中间件中添加req.params对象以进行错误处理

在中间件中添加req.params对象以进行错误处理
EN

Stack Overflow用户
提问于 2018-05-16 16:42:00
回答 1查看 100关注 0票数 0

在我提出问题之前的一些背景:

  1. 我目前正在Node,Express,MongoDb + Mongoose构建一个服务器
  2. 我正在使用PassportJS进行身份验证

我所拥有的每一条路由都由一个中间件来保护,确认请求是经过身份验证的。最重要的是,我有不同级别的许可(即,is_regular_user、is_account_approved、is_team_admin、is_firm_admin),我也在使用中间件。

如果其中一个中间件检查失败,我将重定向到一个通用的400错误处理程序。但是,我想将一些信息传递给这个错误处理程序,这样我就可以向客户端返回一个自定义错误消息(这样我就可以告诉他们在我的公司中有什么错误需要与谁联系)。

我正在考虑在req.params Express对象中附加一条消息(指定哪个中间件检查失败),泛型错误处理程序可以检查该消息,然后使用该消息打印自定义错误消息。这种方法有意义吗?如果不这样做,最好的办法是什么?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-05-16 16:54:43

可能是这样的

代码语言:javascript
运行
复制
// handle
authMiddleware = (req, res, next) => {
 const error = doAuthLogic(req);
 if(error){
   res.send({ error: e});
   return;
 }
 next(req, res);
}
app.get('/api', authMiddleware, myController );

doAuthLogic中,可以传递所有所需的信息。

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

https://stackoverflow.com/questions/50376071

复制
相关文章

相似问题

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