當后端驗證用戶名和密碼匹配時生成一個session,里面包含userID,我想問問前端怎么獲取這個登陸狀態,跳轉到需要登錄才能訪問的頁面,還有怎么在前端獲取到session里面存的userID,查了很多資料,都很模糊,希望有大佬能解答一下
uj5u.com熱心網友回復:
忘了說了,前端是vue框架,后端是springbootuj5u.com熱心網友回復:
web登錄 => 請求登錄api => api回傳session/錯誤提示 => web快取session到cookie并跳轉到登錄可訪問頁面,每次請求api把session傳給api檢驗當前狀態重繪頁面的時候web從cookie獲取session,請求api把session當引數傳給api檢驗,失敗重新回到登錄頁,成功繼續訪問頁面。
uj5u.com熱心網友回復:
請求回來的回應 將sessionStorage.setItem("userID", userID);存盤到session里面,如果需要登錄狀態才可以跳轉頁面,可以使用axios請求攔截,請求的時候將userId及登錄狀態資訊放頭部或者你所需要的東西,請求前判斷是否滿足你所需要的條件,不滿足則跳轉到登錄頁,登錄完才能進入需要登錄的界面我之前也寫了一篇 axios封裝跟請求攔截的文章,你可以參考一下看看 https://blog.csdn.net/weixin_45471782/article/details/100225111
uj5u.com熱心網友回復:
請求之后用sessionStorage.setItem來把資料存下來,然后再封裝的請求方法中加入請求攔截,通過sessionStorage.getItem來取資料,有值才執行請求,沒有就退回登錄頁,也可也用路由守衛來判斷登錄狀態。請求攔截攔截和路由守衛怎么用可百度,路由守衛的寫法我文章里有寫過,可以去看一下
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/42267.html
標籤:Ajax
上一篇:瀏覽器快取清理
