cookie:
cookie是比較老的前端緩存技術了,它的特點是想要使用它前端必須要有服務(靜態網頁是不行的),而且存儲大小限制在4kb。那么為什么必須要有服務才能使用cookie呢?因為只要有請求涉及cookie,cookie就要在服務器和瀏覽器之間來回傳送,而且由於瀏覽器的跨域限制,
客戶端和服務端必須要保證同源的原則(也就是跨域問題,詳情見我的其他文章),由於cookie是存放在前端的,所以安全問題一直是個大問題,因此一般重要的信息不建議放在cookie中存放。
session:
對於服務端的程序眼來說session大家肯定很熟悉了,session是一種服務端的機制,也就是能把信息存放在服務端,所以安全可以保障,它的原理是通過session id來識別客戶端,這個session id是存放在cookie中的(當然session id讓用戶看見沒無妨),
服務端會通過session id來識別客戶端進行匹配和判斷。它和cookie對比起來差距就很明顯了,一個是把數據存在客戶端;一個存在服務端,從安全性考慮的話一般像用戶名密碼這種私密信息一般放在session中。
localStorage:
它的特點就是“持久”,一旦通過保存,不通過手動清除的話,就會一直保存在前端,它的保存格式是鍵值對的方式也就是“key-value”的方式保存的,它的存儲空間大小限制在500萬字符左右。