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接口使用更方便