黑马程序员__Cookie Session

---------------------- Windows Phone 7手机开发.Net培训、期待与您交流! ----------------------

Cookie机制
主要是指服务器和浏览器间 互相传递 Cookie数据的一种 流程。
    1.服务器到浏览器:
    1.1服务器通过响应报文的 Set-Cookie 方式向浏览器发送 Cookie 键值对和失效时间和path等数据
    1.2浏览器接收到服务器的Set-Cookie命令之后,会自动的根据内容 在浏览器端创建Cookie文件。
    1.3浏览器会根据Cookie的失效时间,自动清除过期的Cookie文件。
    2.浏览器到服务器
    2.1当浏览器请求一个域名的时候,会自动在浏览器端读取 该域名下的Cookie文件,并将里面的键值对 装入 请求报文,发送给服务器。
    2.2当服务器接收到浏览器的请求报文里的Cookie命令后,会自动将里面的键值对 封装到 Request.Cookies集合中,供程序员使用。
Session

  • Session提供了一种把信息保存在服务器上的一种方式.它能存储任何数据类型包括自定义对象.
  • 每个客户端的Session是独立存储.
  • Session对象用于存储有关用户信息.
  • 在整个用户会话过程中(浏览器关闭之前)都会保留此信息.(保存SessionId的cookie丢失之前)
  • 当用户在应用程序中从一个网页浏览到另一个网页时,存储在Session中的变量不会被丢弃.
  • Session只可由该会话的用户访问(因为SessionId这个东东以cookie的方式保存在访问者浏览器的缓存里了)
  • 当前用户不能访问或修改他人的Session
  • 配置整个网站的Session失效时间
    <system.web>
       <sessionState timeout="20"></sessionState>
    </system.web>
  • Session有自动销毁机制(设置失效时间,默认就是滑动过期机制),如果时在设置的失效时间内浏览器没有和服务器发生任何交互,则Session会定时销毁.
  • 当浏览器禁用了 Cookie后,那么服务器就可以选择将 SessionId存入地址栏的url中来传递。
  • 可以看到Session机制并不是Http协议规定的,是ASP.Net实现的,现在PHP/jsp等大部分服务端技术实现了Session,原理都差不多.
注意:一般处理程序中,如果要使用 Session的话,必须实现IRequiresSessionState接口,这种情况下的接口叫【标识接口】,它不是为了规范子类的行为,也就无所谓在接口里定义方法。
它的存在,就是为类加上一个【标识】而已,当程序创建类的对象的时候可以检查是否有此【标识】.
当Session过期或中止时,服务器就会清除Session对象.
Session的操作:
  • 开始并为Session赋值:
    Session["uName"] = "dlc";
  • 取值:
    string strName = Session["uName"].ToString();
  • 销毁(取消/退出)
    Session.Abandon(); //销毁服务器端的Session对象
    Session.Clear(); //清空服务器端的Session对象里的键值对,Session对象并没有从Session池里销毁.
Session常用属性
属性描述
SessionId唯一用户会话表示符
TimeOut用户超时(单位分钟),默认20分钟
Count会话状态集合中的项目数

 

---------------------- Windows Phone 7手机开发.Net培训、期待与您交流! ----------------------

转载于:https://www.cnblogs.com/hmdeartfk/archive/2012/11/30/2796400.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值