cookie和session的區別
1、cookie數據存放在客戶的瀏覽器上,session數據存放在服務器上;
2、cookie不是很安全,別人可以分析存放在本地的cookie並進行cookie欺騙;
考慮到安全應當使用session
3、session會在一定時間內保存在服務器上,當訪問量增加時,會比較占用服務器的性能;
考慮到減輕服務器性能方面,應當使用cookie
4、單個cookie保存的數據不能超過4K,很多瀏覽器都限制一個站點最多保存20個cookie;
5、將登錄信息等重要信息存放在cookie,其他信息如果需要保留,可以放在cookie中;
sessionStorage localStorage 和cookie之間的區別
共同點:都是保存在瀏覽器端,且同源的
區別:
1、cookie數據自始至終在同源的http請求中攜帶,即cookie在瀏覽器和服務器間來回傳遞,而sessionStorage和localStorage不會自動把數據發給服務器,僅在本地保存。cookie數據還有路徑的概念,可以限制cookie只屬於某個路徑下。
2、存儲大小限制也不同,cookie數據不能超過4K,同時每次http請求都會攜帶cookie,所以cookie只適合保存很小的數據,如會話標識,sessionStorage和localStorage雖然也有存儲大小的限制,但比cookie大得多,可以達到5M或者更大。
3、數據有效期不同,sessionStorage僅在當前瀏覽器窗口關閉前有效,自然也就不可能持久保持
localStorage始終有效,窗口或瀏覽器關閉也一直保存,因此用作持久數據;cookie只在設置的cookie過期時間之前一直有效,即使窗口或瀏覽器關閉
4、作用域不同,sessionStorage不在不同的瀏覽器窗口中共享,即使是同一個頁面;localStorage在所有同源窗口中都是共享的,cookie也是在所有同源窗口中都是共享的
5、WEB Storage支持事件通知機制,可以將數據更新的通知發送給監聽者
6、WEB Storage的api接口使用更方便
