使用Redis實現cookie快取

2021-09-30 17:09:36 字數 540 閱讀 8825

session:會話,儲存在伺服器端,一般可以用來記錄使用者的登入狀態,也可以用來存一些如購物車之類的資料。

cookie:儲存在瀏覽器端,可以用來記錄身份,儲存sessionid有簽名cookie和令牌cookie。

儲存使用者的瀏覽記錄,攜帶cookie訪問網頁完成身份校驗,並將瀏覽記錄與訪問時間一起存入資料庫中,這樣直接與關係型資料庫互動,在併發量較高時,讀寫資料庫頻繁,需要快取來優化效能。

使用redis重新實現登入cookie功能。

步驟1.使用乙個雜湊儲存cookie令牌與登入使用者之間的對映,這裡我認為將cookie換成jwt的token也一樣,根據給定的令牌查詢對應的使用者,在使用者已經登入的情況下,返回改使用者的id。

2.使用者瀏覽頁面時,對使用者在登入雜湊立的資訊做更新,將使用者的令牌和當前時間戳新增到記錄醉經登入使用者的遊戲集合中,如果使用者在瀏覽商品頁面,就將該商品新增入使用者瀏覽記錄有序集合中,在記錄超過一定數量時就移除舊紀錄。

3.定時清理令牌與使用者間的對映,規定好快取最大數量及根據時間,每次清理出去的會話數量,也可已直接設定過期時間,讓redis快取自動刪除。

C 使用cookie實現登入

首先,我們需要做的是什麼?我們成功登入之後,跳轉到主介面,然後主介面的登入按鈕變成頭像啥的。下一次開啟網頁就要判斷有沒有登入過,有cookie就不需要登入,直接顯示頭像 1.成功登入後,客戶端請求伺服器 2.把登陸資訊傳入到伺服器 3.伺服器有了這個cookie,儲存到cookie集合裡面,然後反饋...

使用Cookie實現自動登入技術

1.頁面勾選儲存密碼按鈕 記住密碼 2.建立乙個cookie儲存提交過來的賬號密碼 這段 中包括了登入驗證等等 這段 是登入時候執行的 這段 會返回乙個user物件儲存使用者的賬號密碼 獲取資料 string username request.getparameter login username ...

使用cookie實現sso單點登入

思路 有a b,c 三個應用,a,提供登入退出服務,bc為使用者端,同乙個瀏覽器下利用cookie 中的token 進行登入校驗,b登入服務時檢驗token是否存在,如果存在則b服務在後端拿個token向a後端提供的獲取使用者資訊介面,獲取登入資訊 如果不存在,則跳轉到a服務的登入頁並攜帶登陸成功後...