cookie、sessionStorage、localStorage的區別

三者的共同點是:都是保存在瀏覽器端,且都是同源的。(同源:如果兩個頁面擁有相同的協議(protocol),端口(如果指定),和主機,那麼這兩個頁面就屬於同一個源(origin)。)
區別:cookie數據始終在同源的http請求中攜帶(即使不需要),即cookie在瀏覽器和服務器間來回傳遞。
而sessionStorage和localStorage不會自動把數據發送個服務器,僅在本地保存,cookie數據還有路徑的概念,可以限制cookie只屬於某個路徑下。
存儲大小不同:cookie數據不超過4k,同時因爲每次http請求都會攜帶cookie,所以cookie只適合保存很小的數據,如回話標識。sessionStorage和localStorage雖然也有大小的限制,但比cookie大的多,可以達到5M或者更大。
cookie只在設置的cookie過期時間之前一直有效,即使瀏覽器或窗口關閉。
作用域不同。sessionStorage不在不同的瀏覽器窗口中共享,即使是同一個頁面。localStorage在所有的同源窗口中都是共享的,cookie也是在所有的同源窗口中共享。

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