概念
会话:用户打开浏览器,访问该web服务器的多个资源,然后关闭浏览器。这一过程为一个会话。
Cookies
跟踪浏览器用户身份的会话方式。一般用来保存用户信息。安全性较低。可以长期保存。
存储地方:
-
内存cookie,是指没有设在cookie的Expires的属性(当会话结束时失效,即关闭浏览器窗口(如果没有设置Expires),此时cookie将停留在客户端的内存中。
-
硬盘cookie,是指在你设置了cookie的Expires属性(只要设置了过期时间),此时cookie将保存到你的硬盘上。
补充:
-
内存是临时存储,关机/断电后信息就没了。硬盘中的信息可以长久存储。
-
内存容量决定电脑能同时运行的程序数量,硬盘容量决定你电脑能存放多少东西。
session
跟踪浏览器用户身份的会话方式。信息存储在服务器,在交互时传到客户端一个sessionid,客户端请求数据时发送sessionid用于识别。
Session安全性比Cookies更高。Session 的主要作用就是通过服务端记录用户的状态。 典型的场景是购物车,当你要添加商品到购物车的时候,系统不知道是哪个用户操作的,因为 HTTP 协议是无状态的。服务端给特定的用户创建特定的 Session 之后就可以标识这个用户并且跟踪这个用户了。
cache
是缓存,另外一种叫法是 快读。所有用户都可以访问到的对象,保存在服务器。用于缓冲数据,通常为网页及媒体文件,在涉及安全性的动态生成页面上,可以设置有较时间,以便减少攻击。