测试角度分析cookie、localstorage和sessionstorage
来源:互联网 发布:linux kernel 编辑:程序博客网 时间:2024/06/05 19:52
作为前端测试对于前端的一些基本的知识需要有一定的积累,不然测试的时候总是一头雾水。下面来总结一下cookie、localstorage和sessionstorage的概念、区别、应用场景。
基本概念
Cookie
cookie主要是用来保存用户的登录信息的,这些信息通常是经过加密的。cookie一般是由服务器端生成然后存在浏览器中的。因为HTTP协议是无状态的,所以服务器不知道用户上一次做了什么,有了cookie,服务器可以设置和读取cookie中的信息来维护用户跟服务器会话中的状态。
cookie的翻译是小甜饼,确实,cookie是比较小的,它的大小限制在4KB左右。因为cookie数据会一直在同源的http请求中携带,就算这些信息是没有用的也会在请求中。所以cookie是要在浏览器和服务器之前来回传递的,所以它肯定不能太大。
浏览器端生成的cookie有一定长度的有效期,在有效期时间内它是一直存在浏览器中的,即使关闭浏览器,它仍然存在。
Localstorage
localstorage和sessionstorage都是在HTML 5之后提供的新的客户端存储数据的方法。
localstorage是没有时间限制的数据存储,就是说,如果数据存在localstorage中只要不清除浏览器存储的数据,它将一直存在于浏览器中。
localstorage是专门用于客户端存储数据的,所以它不会强制携带在客户端的请求中。因此它的数据大小限制也没有cookie那么严格,localstorage的大小限制为5M左右。
Sessionstorage
sessionstorage和localstorage有点相似,但是它和localstorage的生命周期不一样,它只在当前会话保存在浏览器中,当会话结束它就被清除了。这样说可能比较抽象,简单说就是关闭浏览器之后,存储在sessionstorage中的数据都将被清除。
sessionstorage也主要用于客户端存储数据,它不会被强制携带在客户端的请求中。它的大小也被限制在5M左右。
下面用一个表格来梳理一下:
特性
Cookie
localStorage
sessionStorage
数据的生命期
一般由服务器生成,可设置失效时间。如果在浏览器端生成Cookie,默认是关闭浏览器后失效
除非被清除,否则永久保存
仅在当前会话下有效,关闭页面或浏览器后被清除
存放数据大小
4K左右
一般为5MB
与服务器端通信
每次都会携带在HTTP头中,如果使用cookie保存过多数据会带来性能问题
仅在客户端(即浏览器)中保存,不参与和服务器的通信
应用场景
Cookie
cookie大家应该相对熟悉一些,主要是用来存储中用户的信息的。主要验证的点可能是对应cookie值的有效期是否正确。下图中是cookie的有效期限,可以通过这个来验证。
上图中Expires/Max-Age字段就是用来记录cookie的有效时间的。上图中圈出的就是用户密码保存的时间10天。
Localstorage
localstorage主要用来存储和当前设备有关的一些数据,比如:首次进入的引导提示、用户在未登陆状态读过的书等
如上图,guide_showed=1是用来记录首次进入阅读器首页的引导浮层已经出现过了,以后都不会再出现。YUEDU163_READLOG是用来记录在当前设备当前浏览器中用户阅读过的书籍。
Sessionstorage
sessionstorage主要用来存储每次会话都会展示的东西,比如:广告,本次我把广告推广关闭了,然后关闭浏览器,下次再进来这条广告还会再出现。
0 0
- 测试角度分析cookie、localstorage和sessionstorage
- sessionstorage,localstorage和cookie
- sessionStorage 、localStorage 和 cookie
- sessionStorage 、localStorage 和 cookie
- sessionStorage、localStorage和cookie
- 浅谈cookie、sessionStorage 和 localStorage
- localStorage sessionStorage和cookie区别
- sessionStorage 、localStorage 和 cookie比较
- cookie和sessionStorage,localStorage区别
- cookie和sessionStorage和localStorage的区别
- sessionStorage 、localStorage 和 cookie 之间的区别
- sessionstorage,localstorage和cookie之间的区别
- cookie,localStorage和sessionStorage三兄弟
- sessionStorage localStorage 和 cookie 的区别
- cookie、sessionStorage和localStorage的区别
- sessionStorage 、localStorage 和 cookie 之间的区别
- cookie与HTML5的localStorage和sessionStorage
- sessionStorage localStorage 和 cookie 之间的异同
- 初识MySQL
- 第五次作业
- 《程序员的思维修炼》笔记。
- 傻瓜
- qt connect Qt::ConnectionType介绍
- 测试角度分析cookie、localstorage和sessionstorage
- JDBC 实现事务的回滚
- Spark机器学习-1
- php判断bool值
- opengl es 坐标系
- java 金额的大小写转换类
- Spring权限管理系统流程梳理
- TensorFlow上实现AutoEncoder自编码器
- 小学生的考验