我认为创建jwt有效负载时遇到问题。
我正在使用jsonwebtoken 8.2.0,当我创建令牌时,这是我的代码:
bcrypt.compare(password, user.password).then(isMatch => {
if (isMatch) {
// User Matched
const payload = { id: user.id, name: user.name, avatar: user.avatar }; //
Create JWT Payload
// Sign Token
jwt.sign(
payload,
keys.secretOrKey,
{ expiresIn: 3600 },
(err, token) => {
res.json({
success: true,
token: 'Bearer ' + token
});
}
);
} else {
// errors.password = 'Password incorrect';
return res.status(400).json("eroor");
您可以看到我的const有效负载,但我没有发送密码。
在邮递员中进行测试,我收到令牌,并且在https://jwt.io/上检查令牌字符串时,我仅看到id,name和avatar,但是当我碰到任何受保护的端点时,我可以console.log(req.user)
看到所有用户凭据通过,电子邮件。日期...来自用户架构的所有数据?可以吗?