【发布时间】:2019-07-30 21:11:32
【问题描述】:
我想使用 json 网络令牌来验证用户,我即将使用 jwt.sign 方法,但根据维基百科有效负载定义(在计算中),“有效负载”术语让我感到困惑:
在计算和电信中,有效负载是传输数据的一部分,即实际预期的消息。发送标头和元数据仅用于启用有效负载传递。[1][2]
但根据中码
const jwt = require('jsonwebtoken');
app.post('/api/authenticate', function(req, res) {
const { email, password } = req.body;
User.findOne({ email }, function(err, user) {
if (err) {
console.error(err);
res.status(500)
.json({
error: 'Internal error please try again'
});
} else if (!user) {
res.status(401)
.json({
error: 'Incorrect email or password'
});
} else {
user.isCorrectPassword(password, function(err, same) {
if (err) {
res.status(500)
.json({
error: 'Internal error please try again'
});
} else if (!same) {
res.status(401)
.json({
error: 'Incorrect email or password'
});
} else {
// Issue token
const payload = { email };
const token = jwt.sign(payload, secret, {
expiresIn: '1h'
});
res.cookie('token', token, { httpOnly: true })
.sendStatus(200);
}
});
}
});
});
payload 是用户提供的用于身份验证的电子邮件,这让我很困惑,如果有人解释什么是有效载荷以及 jwt.sign() 中有效载荷的作用是什么,我会很高兴
【问题讨论】:
标签: node.js express jwt payload