我如何在登录路由中设置一个头,以便浏览器记住谁登录



我已经创建了一个用户登录后端,一切正常,但是当我登录到一个用户详细信息时,尽管是正确的,我无法探索其他路由,因为用户没有被授权。我如何将访问令牌保存到浏览器以便它记住?下面是登录路由。

router.post("/login", async (req, res) => {
try {
const oneUser = await users.findOne({
username: req.body.username,
});
if (!oneUser) {
return res.status(500).json("User is not in the database");
}
const oPassword = cj.AES.decrypt(
oneUser.password,
process.env.pass
).toString(cj.enc.Utf8);
if (oPassword !== req.body.password) {
return res.status(500).json("Password is incorrect");
}
const accessToken = jwt.sign(
{
id: oneUser._id,
isAdmin: oneUser.isAdmin,
},
process.env.jwtToken,
{ expiresIn: "300" }
);
const { password, ...others } = oneUser._doc;
res.status(200).json({ ...others, accessToken });
} catch (err) {
res.status(500).json(err);
}

});

我在网上看到了类似的东西。

res.header("token", accessToken)

为此,您可以为该用户保存会话或响应令牌并将其保存到客户端浏览器cookie或会话存储。

用于在节点js中设置会话https://www.npmjs.com/search?q=session

最新更新