cookie 与 session 都是为了解决HTTP协议无状态而产生的解决方式。cookie的解决方式是在客户端,而session的解决方式是在服务器端。
I、cookie
cookie实际上就是一小段文本信息。
1、浏览器请求服务器,服务器需要记录该浏览器状态,就会用response向客户端颁发一个cookie;
2、浏览器将cookie保存起来。当再次请求服务器时,就会将request请求与cookie一同提交给服务器;
3、 服务器检查cookie,来辨认用户状态(服务器可以根据需要修改cookie的内容)。
2、 session
session机制使一种服务器端机制,服务器使用一种类似于散列表的结构来保存信息。session以session id来区分,session id可以通过cookie实现;
1、 当服务器端程序需要为某个客户端创建一个session使,服务器首先检查客户端request是否包含了一个session id,如果有,就将其对应的session检索出来使用,如果没有就新创建一个session并关联相应的session id;
2、 session id是一个既不会重复,也不容易仿造的字符串,服务器将session id通过响应回传给客户端保持(可以采用cookie的方式),这样在交互过程中浏览器就可以发送session id去寻找服务器端所保存的字节的session状态。
欢迎转载,转载请注明出处wenmingxing cookie vs session