實現用戶登錄到底使用cookie還是session?

我們一般都知道 cookie 是存在瀏覽器端的,session 是存在服務端的,但是實現用戶登錄具體是怎麼用這兩個東西的呢,今天來詳細的說一下!

實現登錄的兩種方式

方式一:存儲在客戶端
將用戶數據加密,然後存儲在cookie中。這種專業術語叫做client side session。flask採用的就是這種方式,但是也可以替換成其他形式。

方式二:存儲在服務端
通過 session 得到一個 session_id 存儲在 cookie 中,然後具體的數據則是保存在服務器 session 中。如果用戶登錄完成,則服務器會在 cookie 中保存一個session_id,下次再次請求的時候,會把該session_id攜帶上來,服務器根據session_id在session庫中獲取用戶的session數據。就能知道該用戶到底是誰,以及之前保存的一些狀態信息。這種專業術語叫做server side session。

如何判斷使用哪種方式

cookie 保存在客戶端,不佔用服務器資源,對於併發比較高的網站,建議使用方式一,如一些論壇之類的

session 是保存在服務端的,每個用戶都會產生一個session,併發訪問多的話,每個用戶都會生成session,消耗內存,所以對於併發不高的網站,如後臺管理系統,可以使用 session,更安全

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章