关于cookie、session和localStorsge的异同

2018-07-04  本文已影响0人  西红柿w

要了解cookie、session和localStorage之间的区别,首先要知道他们的作用。


cookie

cookie是web服务器通过浏览器在用户硬盘上存储的一部分信息。
cookie允许一些web站点在用户的电脑上存储信息,并随后取回他。
cookies是一种web服务器通过浏览器在访问者硬盘上存放信息的一种手段。

cookie对网站、用户的有利之处


session

session机制采用的是在服务器端保持状态的方案。他本身比较特殊,他引入了一个 浏览器窗口 的概念。

sessionStorage是在同源的同窗口(或tab)中,始终存在的数据。也就是说只要这个浏览器窗口没有关闭,即使刷新页面或进入同源另一页面,数据仍然存在。关闭窗口后,sessionStorage即被销毁。同时“独立”打开的不同窗口,即使是同一页面,sessionStorage对象也是不同的。


localStorage

  • localStorage HTML5本地存储web storage特性的API之一,用于将大量数据(最大5M)保存在浏览器中,保存后数据永远存在不会失效过期,除非用 js手动清除。
  • 不参与网络传输。
  • 一般用于性能优化,可以保存图片、js、css、html 模板、大量数据。

cookie和session的区别

1、cookie数据存放在客户的浏览器上,session数据放在服务器上。
2、cookie不是很安全,别人可以分析存放在本地的COOKIE并进行COOKIE欺骗考虑到安全应当使用session。
3、session会在一定时间内保存在服务器上。当访问增多,会比较占用你服务器的性能考虑到减轻服务器性能方面,应当使用COOKIE。
4、单个cookie保存的数据不能超过4K,很多浏览器都限制一个站点最多保存20个cookie。
5、所以建议:将登陆信息等重要信息存放为SESSION;其他信息如果需要保留,可以放在COOKIE中
6、session保存在服务器,客户端不知道其中的信息;cookie保存在客户端,服务器能够知道其中的信息。
7、session中保存的是对象,cookie中保存的是字符串。
8、session不能区分路径,同一个用户在访问一个网站期间,所有的session在任何一个地方都可以访问到。而cookie中如果设置了路径参数,那么同一个网站中不同路径下的cookie互相是访问不到的。


cookie、session和localStorage的区别

上一篇 下一篇

猜你喜欢

热点阅读