Session跟Cookie简单的理解

Session是一种抽象的概念,而不是一种具体的实现,只要能建立起user agent与server之间一对一交互的,

就可以称之为Session,这意味着它可以有很多种实现。网上很多文章对Session的描述局限在一种通用的实现上,这在一定程度上来说是一种误导。

Cookie作为HTTP协议中header头的一个字段,是一个具体的存在,它可以认为是广义Session的一种实现方式。

而我们日常所说的Session,实际上是借助Cookie及服务器存储的一种会话实现。从这个层面出发,二者关系如下:

Cookie存储在客户端(浏览器),而Session存储在服务端。这一条也决定了Session相较Cookie来说更安全。

Session的运行依赖Session id,而Session id是存在Cookie中的,如果浏览器禁用了Cookie,Session也会失效。

Cookie保存数据<=4KB,一个站点最多保存20个Cookie,而Session并没有上限,取决于服务器的能力和具体的使用场景。

Cookie支持跨域名访问,Session不支持跨域名访问。

Cookie可以设置为长期有效,而Session会随会话窗口关闭而失效。

原文地址:https://www.cnblogs.com/Magic_liao/p/13297447.html