如何创建一个附加到node.js中实际响应的json对象

时间:2017-01-02 15:59:53

标签: javascript json node.js express

我在节点应用程序中使用jSON web令牌(simple-jwt)。我有一个中间件(使用express.js)检查令牌是否为VALal?()并返回用户数据,如果为true。

但是当用户对localhost:8080 / home或任何其他路由发出GET请求时,我需要它返回用户数据(来自tokenValidation中间件)以及localhost:8080 / home的实际内容。我不能两次使用response.json({}),因为这会被视为两个响应。

使用实际的json响应附加用户数据的标准方法是什么?

如果需要代码,请告诉我。

1 个答案:

答案 0 :(得分:1)

在中间件中,您可以向req对象添加新属性。

(req, res, next) => {
  const user = ...queryUser
  req.user = user;
  next();
}

在您的路线处理程序中:

(req, res) => {
  const user = req.user;
  const otherData = { data : 'junk' };
  res.status(200).send({ user, otherData });
}