Cookie与Web Storage的区别
共同點:用于數據的存儲。
區別:
1、是否需要添加到http請求頭?
HTTP Cookie(cookie):在客戶端存儲會話信息,要求服務器對任意HTTP請求發送set-cookie HTTP頭作為響應的一部分,包含會話信息。例如set-cookie: name=value。然后瀏覽器會存儲這樣的會話信息,并在這之后,通過為每個請求添加cookie HTTP頭將信息發送回服務器。如cookie:name=value。
Web Storage:無須將數據發回服務器。
2、作用范圍
cookie:是綁定在特定域名下的,當設定了一個cookie后,再給創建它的域名發送請求時,都會包含這個cookie。這個限制保證了儲存在cookie中的信息只能讓批準的接受者訪問,而無法被其他域訪問。
sessionStorage:sessionStorage對象存儲特定于某個會話的數據,可以跨越頁面刷新而存在。它綁定于某個服務器會話,所以當文件在本地運行時是不可用的。對多頁面應用有限制,因為數據只能由最初給對象存儲數據的頁面訪問到。
localStorage:要訪問同一個localStorage對象,頁面必須來自同一個域名(子域名無效),使用同一種協議,在同一個端口上。
3、容量
cookie:每個域的cookie總數是有限的,各個瀏覽器之間各有不同。例如:
IE6以及更低版本限制每個域名最多20個cookie,IE7和之后版本每個域名最多50個;Firefox限制每個域最多50個cookie,Opera限制每個域最多30個cookie;Safari和Chrome對每個域的cookie數量限制沒有硬性規定。
瀏覽器對cookie的尺寸也有限制,最好是4095B,尺寸限制影響到一個域下所有的cookie,而并非每個cookie單獨限制。
Web Storage:5MB
4、失效時間
Cookie:設置expires來表示cookie何時應該被刪除的時間戳。
sessionStorage:存儲特定會話數據,在瀏覽器關閉后立即刪除。
localStorage:數據保留到通過JavaScript刪除或是用戶清除瀏覽器緩存。
轉載于:https://www.cnblogs.com/songya/p/11492105.html
總結
以上是生活随笔為你收集整理的Cookie与Web Storage的区别的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: JS创建对象学习笔记
- 下一篇: 2019秋季PAT甲级_C++题解