Cookie和Session学习笔记

会话(Session)跟踪是Web程序中常用的技术,用来跟踪用户的整个会话。常用的会话跟踪技术是Cookie与Session。

Cookie通过在客户端记录信息以确定用户身份,Session通过在服务器端记录用户信息以确定用户身份。

Cookie的工作原理

Cookie是当客户端浏览器向服务器发送请求信息时,服务器存储在客户端(一般指浏览器)上的一个文本文件,记录用户ID,密码,浏览过的网页和停留时间等信息,当浏览器再次发送请求给服务器时,服务器通过读取Cookie得知客户端的相关信息,就可以做出相应的动作。如在页面显示欢迎你的标语,或者让客户端不用输入ID、密码就直接登录等。

Cookie可以保持登录信息利用到用户下次与服务器进行绘画,换句话说,下次访问同一网站时,用户会发现不必输入用户名和密码就已经登录,手动删除Cookie后还是需要手动输入用户名和密码的。而有一些Cookie在用户退出会话时就被删除,这样可以有效保护个人隐私。

Session的工作原理

Session机制是一种服务器端的机制,服务器使用一种类似于散列表的结构来保存信息。

与Cookie不同的是,Cookie保存在客户端浏览器中,而Session保存在服务器中。当客户端浏览器访问服务器时,服务器会根据请求信息生成与Session相关联的session_id(session_id的值时一个既不会重复,又不容易被找到规律以仿造的字符串),保存这个session_id的方式可以采用Cookie。服务器将session_id通过Cookie的方式发送给客户端,当客户端再次向服务端发送请求时,会通过Cookie将这个session_id发送给服务端,这样就可以与Session关联上,即Session是基于Cookie的。

原文地址:https://www.cnblogs.com/mrgavin/p/12303975.html