会话跟踪:cookie和session
Cookie通过在客户端记录信息确定用户身份,Session通过在服务器端记录信息确定用户身份。
Cookie
Cookie就是由服务器发给客户端的特殊信息,实际上是一小段的文本信息。客户端每次向服务器发送请求的时候都会带上这些特殊的信息,服务器在向客户端回传相应的超文本的同时也会发回这些个人信息(存于HTTP头中)。这些信息同一存放于系统盘的某个位置(内存或是硬盘,由cookie的生命时间决定)。
一般网站登录中的“记住密码”就是通过cookie机制实现的,只不过把过期时间设置为很长的一段时间。
本质上cookies就是http的一个扩展。有两个http头部是专门负责设置以及发送cookie的,它们分别是Set-Cookie以及Cookie。
通讯过程:
Cookie是保存在浏览器端的,因此浏览器可以操作Cookie。浏览器可以使用脚本程序JavaScript就可以操作Cookie。
Session
Session是服务器端使用的一种记录客户端状态的机制,
Session需要使用Cookie作为识别标志。服务器向客户端浏览器发送一个名为PHPSESSIONID/JSESSIONID的Cookie,它的值为该Session的id。Session依据该Cookie来识别是否为同一用户。