【发布时间】:2020-02-13 19:54:42
【问题描述】:
我正在尝试创建一个登录,其中登录数据发送到 nodejs 服务器,如果登录数据正确,服务器将通过“res.cookie”发送 JWT 令牌,我想知道的是如何reactjs 客户端接收到这个 cookie 并清除这个 cookie。
app.post('/login', (req, res) => {
const userData = {
email: req.body.email,
password: req.body.password
}
if(userData.email === email && userData.password === password){
const payload = { email };
const token = jwt.sign(payload, secret, {
expiresIn: '1h'
});
console.log(token)
res.cookie('token', token, { httpOnly: true })
.sendStatus(200);
}else{
res.send('incorrect params')
}
console.log(userData)
})
【问题讨论】:
-
您是否有理由不使用npmjs.com/package/express-jwt 或类似的预制、经过良好测试的快速中间件身份验证器,因此您不必自己编写任何这些?
-
@Mike'Pomax'Kamermans 我对反应和节点还很陌生,我必须研究 express-jwt
-
您正在使用
httpOnly标志设置cookie。该 cookie 将无法在 JS 领域中读取,但它将由浏览器随后续请求一起发送。