session 和 cookie 有什麼區別?

session 和 cookie 有什麼區別?

瀏覽器和應用服務交互,一般都是通過 Http 協議交互的。Http 協議是無狀態的,瀏覽器和服務器交互完數據,連接就會關閉,每一次的數據交互都要重新建立連接。即服務器是無法辨別每次是和哪個瀏覽器進行數據交互的。

爲了確定會話中的身份,就可以通過創建 session 或 cookie 進行標識。

 

兩者區別:

  • session 是在服務器端記錄信息;cookie 是在瀏覽器端記錄信息
  • session 保存的數據大小取決於服務器的程序設計,理論值可以做到不限;單個 cookie 保存的數據大小不超過4Kb,大多數瀏覽器限制一個站點最多20個cookie
  • session 可以被服務器的程序處理爲 key - value 類型的任何對象;cookie 則是存在瀏覽器裏的一段文本
  • session 由於存在服務器端,安全性高;瀏覽器的 cookie 可能被其他程序分析獲取,所以安全性較低
  • 大量用戶會話服務器端保存大量 session 對服務器資源消耗較大;信息保存在 cookie 中緩解了服務器存儲用信息的壓力

 

一般實際使用中,都是把關鍵信息保存在 session 裏,其他信息加密保存到cookie中。

 

 

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