我用jwt做了一個登錄系統,基本上,如果登錄(主頁/登錄)成功,用戶將重定向到主頁(主頁/)。之后,即使用戶在 url 中鍵入(主頁/登錄),他們也會被重定向回主頁,因為(并且只要)他們擁有 jwt 令牌。
我有以下代碼:
app.get('/login', (req, res) => {
const token = req.cookies.jwt
if(token) {
res.redirect('/')
} else {
res.render('login')
}
})
但是,如果用戶通過“后退按鈕”進入(主頁/登錄),即使他們擁有令牌,他們也不再被重定向。如果按下后退按鈕,我如何包含重定向?
uj5u.com熱心網友回復:
重定向發生在客戶端。
因此,只需包含一個用于檢查令牌是否存在的前端 JavaScript 代碼。如果不存在,則重定向。
在 html 代碼中,將此腳本包含在 head 標記中(假設您使用 localstorage 來存盤令牌:
<html>
<head>
..
..
<script>
const token = localstorage.getItem("token");
if(token == null) {
window.location.replace("-path-to-home-page-");
}
</script>
</head>
<body>
..
..
..
</body>
</html>
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/481701.html
上一篇:如何將multer與express.Router()一起使用?
下一篇:返回列表