代码改变世界

session与cookie

2014-02-23 19:20  Qonly  阅读(189)  评论(0编辑  收藏  举报
Session:是在服务器端状态保持机制,提供了一种把信息保存在服务器内存中的一种方式,它能存储任何数据类型包括自定义对象。
每个客户端的Session是独立存储的。Session对象用于存储有关用户的信息,用户不能访问和修改其他用户的session。在服务器端有一个session池,用来存储每个用户的session中的数据,为了区别,给每个存储单元加一个sessionId, 这个sessionId的值是唯一的,然后返回给浏览器,用户下次访问时带着这个sessionId, 从session池中找到对应的session存储单元,每个用户都有属于自己的session,不能对其他用户的session进行操作

sessionID是以cookie的形式返回给浏览器端。浏览器将接收到的存储sessionID的cookie保存在内存中(浏览器端)
session不能跨进程使用(如:不能跨浏览器使用)
同一个浏览器,对多个用户进行操作,它只是改变了session的值,并没有新建session
当调用session的Abandon方法:强制性关闭,如注销
session.Abandon();//销毁服务器端的session对象
session.Clear();//清除session中键值对

cookie: 是一个在客户端状态保持的文本文件,是一种能够让网站服务器把少量数据存储到客户端的硬盘或内存,并且读取出来的一种技术。
浏览器会自动将属于该网站的Cookie文件发给对应的服务器,通过域名来进行区别Cookie文件的名称,如果两个不同的cookie名称,服务器会写一个cookie文件类存储,以键值对的方式存储

cookie的缺点:不能存储过多的信息

这是以前整理的,还有待完善,请大神们指点补充。