开发测试:cookie和session的区别是什么?

时间:2021-03-22作者:猫哥阅读量:184

导读:

编程语言开发中,开发测试:cookie和session的区别是什么?是许多人都会问到的问题,关于开发测试:cookie和session的区别是什么?下面小编整理的一些内容可能会对你有帮助。一起来看看吧!

测试

众所周知,cookie和session的相同之处在于,他们都是用来跟踪浏览器用户身份的对话方式,但两者的区别也不少。在测试面试中,我们经常遇到cookie和session的区别。让我们一起复习一下相关的知识点!

差异1:

Session代表服务器和客户端一次性对话的过程。Session对象存储特定用户对话所需的属性和配置信息。这样,当用户在应用网页之间跳转时,存储在Session对象中的变量不会丢失,而是在整个用户对话中一直存在。当客户端关闭对话或Session超时失效时,对话结束。

HTTP协议是无状态的协议,因此服务方面需要记录用户的状态时,需要通过某个机制识别具体的用户,该机制是Session,典型的场景如购物车,点击订单按钮时,HTTP协议无状态,因此不知道是哪个用户操作的,服务方面为特定的用户制作了特定的Session这个Session保存在服务方面,有唯一的标志。在服务方面保存Session的方法很多,有内存、数据库和文件。

集团时也要考虑Session的转移。在大型网站上,一般有专业的Session服务器集团,用于保存用户对话。此时,Session信息放在内存中,使用Memcached等缓存服务放置Session。

差异2:

考虑服务方如何识别特定的客户这时,Cookie登场了。每次HTTP请求,客户都会向服务方发送相应的Cookie信息。实际上,很多应用程序都是通过Cookie实现Session跟踪的,第一次创建Session时,服务方面通过HTTP协议通知客户,在Cookie中记录SessionID

如果客户的浏览器被禁止Cookie怎么办?一般来说,使用被称为URL重写的技术进行对话跟踪,即每次HTTP交互,URL后面都会附加sid=xxxxx等参数,服务方根据此识别用户。

差异3:

考虑服务方如何识别特定的客户此时,Cookie实际上可以在方便的用户场景下使用。我想我有一次登录过网站,下次登录的时候不想再输入账户。我们该怎么办这个信息可以写在Cookie上,访问站点时,站点页面的脚本可以读取这个信息,自动填写用户名,使用户变得容易。这也是Cookie名称的由来,给用户带来了甜点。

总结cookie和session的区别

(1)作用范围不同,Cookie保存在客户端(浏览器),Session保存在服务端。

(2)访问方式的不同,Cookie只能保存ASCII,Session可以保存任何数据类型,一般可以在Session中保持常用的变量信息,如UserId等。

(3)有效期不同,Cookie可以长期保持。例如,我们经常使用的默认登录功能,Session一般失效时间短,客户端关闭或Session超时失效。

(4)隐私战略不同,Cookie存储在客户端,容易被非法取得,早期将用户的注册名和密码存储在Cookie中,信息被盗的Session存储在服务方面,安全性比Cookie好。

(5)存储大小不同,单个Cookie存储的数据不得超过4K,Session可存储的数据远远高于Cookie。

好了,关于开发测试:cookie和session的区别是什么?就是上面这些内容了,如果你想学习编程开发的一些内容也可以持续关注本站哦!

本文链接地址:https://www.xiaozeseo.com/jzjc/909.html 未经允许禁止转载。

相关栏目

推荐内容

热点内容