我是新的nodejs。发送jwt后,我无法重定向到受保护的页面。在这里,我要做的是从数据库中获取用户详细信息之后,我正在创建一个jwt。但是之后,我想重定向到受保护的页面。
app.post('/Signin', function (req, res){
var post = req.body;
var sql = "SELECT id,name FROM `users` WHERE `name`='"+post.uname+"'and`password`='"+post.pass+"'";
con.query(sql,function(err,result,col){
if(result.length)
{
var re = JSON.parse(JSON.stringify(result[0]));
var token = jwt.sign(re,'ssshhh',{expiresIn : 1440});
res.json({
error: false,
message: 'Validation successful!',
token: token
});
console.log("Successful login");
res.redirect("Protected");
}
else
{
console.log("Wrong Details");
res.redirect("Signin");
}
});
});
答案 0 :(得分:0)
重定向发送GET请求。这由浏览器控制。浏览器不会自动将Authorization:Bear令牌标头添加到请求中(导致页面失败)。
通常,对于重定向,您需要将安全性详细信息加载到cookie中(例如,将JWT令牌放入cookie中,并从cookie中提取受保护的页面)