在注册和登录时,我想将用户的数据与JWT一起发送,以便我可以更新当前用户的个人资料。
router.post('/signup', (req, res) => {
let userData = req.body;
let user = new User(userData);
user.save((err, registeredUser) => {
if(err) {
console.log(err);
}else{
let payload = { subject : registeredUser._id }
let token = jwt.sign(payload, 'abcd');
res.status(200).send({token});
}
});
});
如何将registeredUser对象与令牌一起发送。
答案 0 :(得分:1)
两种方法:
res.status(200).send({token, user})
res.status(200).send({user})
。 通常#2是一个更好的设计,因为令牌更像是auth / session信息,并且可以使用后端的自定义中间件/过滤器(例如:PassportJS)进行拦截,并且始终作为令牌附加到请求标头中前端使用Angular拦截器。
快速配置选项:标头。https://expressjs.com/en/resources/middleware/cors.html#configuration-options