cookies session 和localstorage详解

cookie和session都是用来跟踪浏览器用户身份的会话方式

保存状态:
cookie保存在浏览器中,session保存在服务器上
存储内容:
cookie只能保存字符串类型,session通过类似hashtable的数据结构来保存,能够支持任何数据类型的对象。
存储大小:
单个cookie存储的数据不能超过4kb,session大小没有限制
安全性:
session比cookie更安全

cookie与session的应用场景
cookie:
1.判断用户是否登录过网站,以便下次登录的时候能够实现自动登录,如果删除了cookie,则每次登录必须重新填写登录相关信息
2.保存上次登录的时间等信息
3.保存上次查看的页面
4.浏览器计数

**session:**session用于保存每个用户的专用信息,变量的值保存在服务器端,通过sessionId来区别不同的客户
1.网上商城中的购物车
2.保存用户登录的信息
3.将某些数据放入session中,供用户在不同的页面使用
4.防止非法登录

cookie和session的优缺点:
cookie:
1.大小受限制
2.用户可以操作(禁用cookie使得功能受限制)
3.安全性较低
4.有些状态不可能存储在客户端
5.每次访问都要传送cookie到服务器端,浪费带宽
6.cookie数据有路径(path)的概念,可以限制cookie只在某个路径下使用

session:
1.session保存的东西越多,就会越占用服务器内存,对于用户在线人数较多的网站,服务器的压力就会很大。
2.依赖于cookie(session的sessionId保存在cookie),如果禁用cookie,则需要URL重写,不安全
3.创建session变量有很大的随意性,可随时调用,不需要开发者做精确的处理,所以过度使用session会导致代码不可读而且不好维护

localstorage:
将数据保存在客户端的硬件设备中,及时浏览器关闭了,该数据任然存在,下次打开浏览器的手任然可以使用
sessionstorage
将数据保存在session对象中
两者的区别在于:
sessionstorage为临时保存,而localstorage是永久保存
在这里插入图片描述

发布了43 篇原创文章 · 获赞 45 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/mzc_love/article/details/100120191
今日推荐