session和cookie有什麼區別?

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

爲了肯定會話中的身份,就能夠經過建立 session 或 cookie 進行標識。java

 

二者區別:面試

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

通常實際使用中,都是把關鍵信息保存在 session 裏,其餘信息加密保存到cookie中。小程序


原文連接
 瀏覽器


相關文章
相關標籤/搜索