
作為前端,你是不是很好奇后端是如何處理用戶登陸的。今天我找后端大佬們咨詢了相關知識,先用代碼簡單演示一下sessionId的登錄流程。有錯誤的地方歡迎大佬們在評論區(qū)里指正,大家相互學習。
服務端登錄模塊
登錄,瀏覽器輸入http://localhost:8888/SpringSession/login服務器創(chuàng)建sessionid,sessionid作為key,session作為value。服務器返回響應數(shù)據(jù),響應頭cookie攜帶sessionid,瀏覽器寫入sessionid。如下圖所示:登錄響應頭
瀏覽器存儲sessionid
登錄,瀏覽器輸入http://localhost:8888/SpringSession/login,請求頭cookie自動攜帶sessionid。服務器通過請求信息獲取到sessionid,由于服務器內存中已有該sessionid,無需重復創(chuàng)建sessionid,直接返回數(shù)據(jù),響應頭里不用設置sessionid。請求如下圖所示:已登錄用戶重復登錄演示
瀏覽器訪問用戶信息時,請求頭自動攜帶sessionid,服務器通過sessionid獲取對應的session。如下圖所示:
后端獲取用戶信息模塊
瀏覽器訪問用戶信息
瀏覽器禁用cookie,服務器無法寫入cookie緩存sessionid。隨著移動互聯(lián)網的興起,移動設備沒有cookie,服務器無法將sessionid寫入cookie。當然,客戶端存儲sessionid、請求可以換其他方式處理。如服務器將sessionid放在響應體返回,客戶端手動存儲sessionid,請求數(shù)據(jù)請求頭攜帶sessionid。我們常用的token差不多就是按這種方式處理,下一篇給大家演示token的登錄流程。
在此感謝小鮮肉、奶爸阿強、奶爸小強提供技術指導!
鄭重聲明:本文內容及圖片均整理自互聯(lián)網,不代表本站立場,版權歸原作者所有,如有侵權請聯(lián)系管理員(admin#wlmqw.com)刪除。