cookie
登录状态保持
1数据存放位置不同
cookie数据存放在客户的浏览器上,session数据放在服务器上。
2、安全程度不同
cookie不是很安全,别人可以分析存放在本地的COOKIE并进行COOKIE欺骗,考虑到安全应当使用session。
3、性能使用程度不同:
session会在一定时间内保存在服务器上。当访问增多,会比较占用你服务器的性能,考虑到减轻服务器性能方面,
应当使用cookie。
4、数据存储大小不同:
单个cookie保存的数据不能超过4K,很多浏览器都限制一个站点最多保存20个cookie,而session则存储与服务端,浏览器对其没有限制。

5、会话机制不同
session会话机制:session会话机制是一种服务器端机制,它使用类似于哈希表(可能还有哈希表)的结构来保存信息。
cookies会话机制:cookie是服务器存储在本地计算机上的小块文本,并随每个请求发送到同一服务器。 Web服务器使用HTTP
标头将cookie发送到客户端。在客户端终端,浏览器解析cookie并将其保存为本地文件,该文件自动将来自同一服务器的任何请
求绑定到这些cookie。

 

为什么有状态保持?
因为http协议,底层走TCP,TCP是无状态的协议:
走三次握手(建立连接)、四次挥手(再见),无状态的协议。
服务器不会记得之前跟你说了啥?
下一次连接,又是一个新的连接。
HTTP通讯的过程中,使用的是无状态的协议。
作用:状态保持的一种方案,用来实现状态保持;
本质:是key、value形式的字符串;
原理:服务器给每个客户端进行编号;
服务器生成cookie的key和value
服务器把key和value都给浏览器,在浏览器中保存
浏览器在请求该服务器时,会自动携带cookie
服务器就能够根据cookie信息,识别你是谁。

补充:

**cookie和session都是实现状态保持的方案
和语言、框架(Flask和Django)、平台无关;**
使用cookie:

github网站,倡导开源的计算机程序开发者,全世界最先进的分布式版本控制系统,建议大家注册账号;
1.在请求头中加入cookie信息,可以获取github网站需要登录的页面,才能看到的网页信息
2.把浏览器的cookie信息,转成cookie字典使用,参数名cookies