我正在構建一個使用 jwt 進行身份驗證的 API。我使用中間件來解碼令牌并在每條路由之前設定 req.user。
app.use(async (req, res, next)=>{
const token = req.headers.accessToken;
if(!token){
req.user = undefined;
next()
}
try{
const user = await jwt.verify(token, SECRET)
req.user = user
next()
}catch(err){ // token present but invalid
res.status(which status to use?).json(err)
}
})
如果令牌存在但無效/過期,我想要求客戶端發送重繪 令牌。我應該使用哪個狀態代碼。我可以使用 a403這意味著未經授權,但如果令牌剛剛過期,則用戶已獲得授權但只需要一個新令牌。我不希望客戶端將此403狀態與用戶實際上無權訪問時發送的狀態混淆資源。
由于我無法在谷歌上找到答案,我懷疑這不是處理令牌的方式。有沒有更好的辦法?
uj5u.com熱心網友回復:
401 - Unauthorized : 401 - 是客戶端請求未完成時使用的狀態代碼,因為它缺少所請求資源的有效身份驗證憑據。
看看這個資源一次:
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/364904.html
