cookie和session都属于会话技术的一部分,主要是用来解决http协议无状态的问题.
所谓的无记忆无状态指的是http的多次请求之间没有联系,无法把请求的状态保存下去,即同一用户请求同一浏览器的不同界面,服务器无法识别是否是同一用户的请求的问题,这会导致我们无法进行连续的业务逻辑.
会话技术是一种在同一浏览器对服务器的多次请求中(将数据持久化储存)实现连续业务逻辑的技术.
一次会话周期指的是从打开浏览器到关闭浏览器为止之间的时间间隔.
回到cookie和session.
cookie技术是将数据储存在浏览器的技术,而session技术指的是将数据存储到服务器的技术(可能是文件系统,数据库或者缓存(memcached,redis)).
在每次进行http请求的时候,浏览器都会携带cookie信息发送给服务器,服务器通过cookie信息拿到对应的session信息
cookie可能存在的一些问题,储存在浏览器,不稳定因素增加,相对于session不安全.另外每次请求都要携带所有cookie信息然后发送给服务器,对于带宽也是一种浪费
H5提供了两种新的将数据存储在客户端的方法,localStorage和sessionStorage.
localStorage没有储存时间的限制,sessionStorage在会话周期结束之后就会清除.
localStorage和sessionStorage都不会自动把数据发送给服务器,这一点和cookie不同.两者也比cookie可以储存的数据大得多.