跟大师兄学测试系列-探秘Cookie与Session

2017-08-30 分类:未分类, 跟大师兄学测试 阅读(2311) 评论(0)

揭秘Cookie

为什么要用Cookie?

在HTTP请求中,每个HTTP请求都是独立,没有办法做上下文关联,但是在真正的应用中,很多场景是需要用到这种关联的。最经典也是最常见到使用Cookie的就是登录操作,登录成功后,我们可以在同一浏览器下的不同Tab页面都能访问我们需要登录才可以看到的页面。这就是通过Cookie来实现的。否则每开一个Tab页面登录一次淘宝,估计你也就不想购物了。

所谓的Cookie到底是什么?

从本质上来说,Cookie我们可以理解为,它就是一个存在硬盘的字符串,Cookie可以做很多操作,以登录为例的话,它实际就是存在硬盘中的账号密码,多数会以一种加密的方式存储。

不同浏览器时Cookie是共用的么?

假设电脑上有三种浏览器,谷歌、欧朋、火狐,如果谷歌上打开淘宝并且登录,那么火狐浏览器打开淘宝时一定还是需要登录,其实认真想下就能够想通了,Cookie是存在硬盘中的一个字符串,那么谷歌和火狐浏览器分别安装在不同的目录下,它们存储Cookie的地址一定是不同,所以不同浏览器之间是不可以共用Cookie的。

揭秘Session

为什么要用Session?

在知道Cookie是存在硬盘中的字符串后,如果将存在硬盘中的Cookie盗取,存在登录信息被破解的风险,所以通过Session来避免信息被盗取的风险。

什么是Session?

可以将Session简单的理解为一个对象,这个对象中可以包含很多东西,具体想包含什么是可以由开发人员自定义的。存在服务器中的是一个key,value形式的对象。

Cookie与Session有什么联系?

在WEB应用中,Cookie是可以独立使用的,但是Session必须依赖于Cookie使用,每创建一个Session对象时,都会生成一个唯一的Session_id,它通过Cookie的形式存在浏览器的内存中,随着浏览器关闭则消失,从而保证不留存在硬盘中。

Session的原理是什么?

登录成功后,通过Cookie的形式在浏览器内存中存入一个唯一的Session_id,每一次请求时,都会携带带有Session_id的Cookie信息传到服务器,以Session_id为Key得到唯一的Value信息,则代表发送过来的请求为有效请求。否则为无效请求。

您可能也喜欢:

密码保护:Django – Rest – Framework 视图

APIView 1234567891011121314151617181920212223 # apiview只是提供了request和response的parses的格式化# 如果不...

more

Django – Rest – Framework 序列化器(Serializer)

drf框架中的序列化是指 将数据库模型转化为python的字典 drf框架中反序列化是指 前端传进来的字典格式的,传递给序列化器进行校验,存储数据 序列化器 序列化器的作用是 进行序列化反序列化 定义序列化器时,要知道那些字段要序列化 read_only = True 序列化时使用 前端只做展示使用...

more

Python-迭代器

迭代器 迭代是访问集合元素的一种方式。迭代器是一个可以记住遍历的位置的对象。迭代器对象从集合的第一个元素开始访问,直到所有的元素被访问完结束。迭代器只能往前不会后退。 创建一个可迭代对象 可迭代对象的本质 可迭代对象的本质就是可以向我们提供一个这样的中间“人”即迭代器帮助我们对其进行迭代遍历使用。 ...

more

欢迎新朋友你的到来!
还没有人抢沙发呢~
昵称

登录

忘记密码 ?

切换登录

注册