session 什么时候消失

Gis个人开发 2009-11-05 08:20:44
session 是随着页面的关闭而消失吗?

若页面跳转session 也会消失吗?
...全文
238 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
chinawaff 2009-11-05
  • 打赏
  • 举报
回复
具体代码有吗?

好理解
sundotLei 2009-11-05
  • 打赏
  • 举报
回复 1
[Quote=引用 4 楼 selflessness 的回复:]
在谈论session机制的时候,常常听到这样一种误解“只要关闭浏览器,session就消失了”。其实可以想象一下会员卡的例子,除非顾客主动对店家提出销卡,否则店家绝对不会轻易删除顾客的资料。对session来说也是一样的,除非程序通知服务器删除一个session,否则服务器会一直保留,程序一般都是在用户做log off的时候发个指令去删除session。然而浏览器从来不会主动在关闭之前通知服务器它将要关闭,因此服务器根本不会有机会知道浏览器已经关闭,之所以会有这种错觉,是大部分session机制都使用会话cookie来保存session id,而关闭浏览器后这个session id就消失了,再次连接服务器时也就无法找到原来的session。如果服务器设置的cookie被保存到硬盘上,或者使用某种手段改写浏览器发出的HTTP请求头,把原来的session id发送给服务器,则再次打开浏览器仍然能够找到原来的session。

恰恰是由于关闭浏览器不会导致session被删除,迫使服务器为seesion设置了一个失效时间,当距离客户端上一次使用session的时间超过这个失效时间时,服务器就可以认为客户端已经停止了活动,才会把session删除以节省存储空间。
[/Quote]

UP!
selflessness 2009-11-05
  • 打赏
  • 举报
回复 2
在谈论session机制的时候,常常听到这样一种误解“只要关闭浏览器,session就消失了”。其实可以想象一下会员卡的例子,除非顾客主动对店家提出销卡,否则店家绝对不会轻易删除顾客的资料。对session来说也是一样的,除非程序通知服务器删除一个session,否则服务器会一直保留,程序一般都是在用户做log off的时候发个指令去删除session。然而浏览器从来不会主动在关闭之前通知服务器它将要关闭,因此服务器根本不会有机会知道浏览器已经关闭,之所以会有这种错觉,是大部分session机制都使用会话cookie来保存session id,而关闭浏览器后这个session id就消失了,再次连接服务器时也就无法找到原来的session。如果服务器设置的cookie被保存到硬盘上,或者使用某种手段改写浏览器发出的HTTP请求头,把原来的session id发送给服务器,则再次打开浏览器仍然能够找到原来的session。

恰恰是由于关闭浏览器不会导致session被删除,迫使服务器为seesion设置了一个失效时间,当距离客户端上一次使用session的时间超过这个失效时间时,服务器就可以认为客户端已经停止了活动,才会把session删除以节省存储空间。
编程小妞儿 2009-11-05
  • 打赏
  • 举报
回复
你好像说的不太清楚哦。
第一个问题,比如你登录一个网站,并打开N个页面,如果你只关闭其中一两个页面,session还是存在,除非你把整个网站的页面都关了,session才会消失。再就是程序设置的session超时后是“退出登录”使session为空。
第二个问题,页面跳转,session也不会消失的。
JavaAlpha 2009-11-05
  • 打赏
  • 举报
回复
session 默认生命周期 是30分钟。在没有操作的情况下。
跳转不会消失的 。比如你登陆csdn后,在各个版块间跳一样。
lzp4881 2009-11-05
  • 打赏
  • 举报
回复
1.关闭浏览器会消失
2.到了Timeout 设置的时间会消失

28,405

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧