Session会在关闭浏览器的时候自动清空吗?

Session在服务器和客户端各保留一个副本。   没有任何资料告诉你关了浏览器它就不在,他本来就和关不关浏览器没关系。  
   
  你说的关闭再打开不在了,保存再打开还在,是一种偶然现象,正确的答案是“有时候在有时候不在”,并不是你说的这样就一定在那样就一定不在,不信你可以多试几种情况。Session和关不关浏览器没必然联系,你试试浏览器不要关,今天晚上睡觉前打开,明天早上起床看看它在不在?呵呵。  
   
  对同一个Session你想赋值多少次都行。  
   
   
  Session丢失的主要原因2个:1是程序中主动清空,2是没有访问的时间太长。(怎么算长怎么算短,以web.config中的超时时间为对比,但不是长了一定不见,短了一定在,而是几率问题,长的越多,丢的机会越大,短的越多,丢的机会越小)

 

4 楼ybzsu(弑君者)回复于 2005-09-07 16:05:14 得分 5

严重不同意syeerzy的看法  
  session绝对不是“有时有有时没有”的!session是服务端创建的,分配一个sessionid,然后“告诉”给客户端,而客户端在每次访问的时候都会把这个session信息放到http头中发送出去,在服务端有个session列表,存了所有的session的相关信息,包括session的timeout信息,所以,在你关了浏览器后在重新打开的时候你的浏览器已经不知道什么session了,所以他就不会发送了,但是服务器端在没timeout和主动去撤消只前是不会消失的。至于你保存然后打开,session还在我觉得是不可能的(除非你还有IE没关,只要一个IE没关,所有的session都还在),因为保存的时候是不会保存这种“临时cookie”的。至于syeerzy说的没timeout也消失的情况几乎没可能(可能性为36的24次方分之一)也就是IIS把cookieid分配给了别人,还有一种可能就是破坏了IIS进程  
   
  Top

5 楼syeerzy(快乐永远*先天下之乐而乐*后天下之忧而忧*)回复于 2005-09-29 08:55:16 得分 0

虽然帖子已经结了,不过有必要澄清一些问题,我说的和ybzsu说的其实没有冲突:  
  1,Session有时候有有时候没有是事实,原因是一个bug。我们一个从事实走一个从理论走,得到不同结果。  
  2,ybzsu说的是在IE浏览器中的情况,不代表所有浏览器都一样,不过有一点,我说漏了,就是我说的“有时候有时候”是指针对不同的情况(比如ybzsu说的还有一个IE窗口没关,比如时间),搂主对同一事情的多次重复一般会出相同结果。     是我没说清楚产生误导,我道歉。  
  3,我说的“服务器和客户端都保存”,其实在客户端是默认作为cookie保存的,除非在webconfig中重新设置过。不信请试试不要设置webconfig,禁用cookie,看看Session有没有用。  
  4,“至于syeerzy说的没timeout也消失的情况几乎没可能”,我在上面并没有说“没timeout也消失”,我说的是“没有达到timeout属性规定的时间”不是“没timeout”。事实上timeout的具体时间是不固定的,和webconfig中规定的时间并不一致。   你的“36的24次方分之一”不妨实际试试,设置为1分钟。你每次间隔58秒访问,看看是否“经常”丢?这是一个bug,虽然在1分钟的时候丢的纪律并不太大,不过远大于你说的值。如果是30分钟,丢就是“经常”的了。 

 

 

Session在服务器和客户端各保留一个副本。   没有任何资料告诉你关了浏览器它就不在,他本来就和关不关浏览器没关系。  
   
  你说的关闭再打开不在了,保存再打开还在,是一种偶然现象,正确的答案是“有时候在有时候不在”,并不是你说的这样就一定在那样就一定不在,不信你可以多试几种情况。Session和关不关浏览器没必然联系,你试试浏览器不要关,今天晚上睡觉前打开,明天早上起床看看它在不在?呵呵。  
   
  对同一个Session你想赋值多少次都行。  
   
   
  Session丢失的主要原因2个:1是程序中主动清空,2是没有访问的时间太长。(怎么算长怎么算短,以web.config中的超时时间为对比,但不是长了一定不见,短了一定在,而是几率问题,长的越多,丢的机会越大,短的越多,丢的机会越小)

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值