asp.net(c#)如何实现关闭浏览器时消除session

一个用户可以打开一个网站的多个网页,如何实现用户将此网站的网页全部关闭时,在从服务器在线人数中取消用户在线session!... 一个用户可以打开一个网站的多个网页,如何实现用户将此网站的网页全部关闭时,在从服务器在线人数中取消用户在线session! 展开
 我来答
sun672380679
推荐于2016-04-27 · TA获得超过148个赞
知道小有建树答主
回答量:277
采纳率:0%
帮助的人:255万
展开全部
好像不能,只能等待session超时之后。。
原因:
1:服务器端无法检测到用户对浏览器的操作,服务器端虽然有Session_End事件,但是这个事件并不是浏览器关闭的时候触发...还是要等到session超时才出发。
2:虽然JavaScript可以检测到浏览器的关闭,但是却不能检测出本网站的其他页面是否关闭,况且客户端远比我们想想的复杂,浏览器进程突然中止,网络中断,死机等等,JavaScript都不可能会触发,所以通过JavaScript检测浏览器的关闭,在实际应用中达不到效果
3:除非你在你网站的每个页面里加上一个动作,通过ajax每隔几秒钟向服务器发送一次请求,用来保持session,超过时间服务器没有收到请求的话session自动超时
4:好像真没什么办法
百度网友bdbf4e10d
2009-11-24 · 超过27用户采纳过TA的回答
知道答主
回答量:105
采纳率:0%
帮助的人:0
展开全部
默认0

打开的时候window.onload js记录窗口+1

在卸载的时候onunload js记录窗口-1, 当为0的时候,通过js去访问一次消除session的页面.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
lcg1986
2009-11-24 · TA获得超过3374个赞
知道大有可为答主
回答量:1858
采纳率:90%
帮助的人:1613万
展开全部
Global.asa
增加Session_End事件,里面处理
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式