用户退出浏览器有三种情况:1.通过“安全退出”按钮退出;2.关闭浏览器退出;3.断电或其他非正常退出用什么方法可以保证这三种情况下都能安全退出呢?

解决方案 »

  1.   

    纳闷了,cookies 在没有具体限制保存的话在你关闭或者你说的断电等其他原因的话就已经退出了session 也是一样的道理啊,除非你想在用户不是正常退出的情况下去触发一些事件(比如保存当前用户的坐标,游戏中经常用到),这样的话你就要不停的去检查一个用户登陆的集合了,如果没有就说明是退出的
      

  2.   

    this.Response.Write(@"<script>window.opener=null;window.close();</script>");
      

  3.   

    非法关机或关闭IE不会执行  
    要记录用户日志和操作时间,再用定时器刷新计算用户  
    已经有固定时间没有活动的用户,然后删除  
    ajax 新跳
      

  4.   

     断电、死机等被迫重启机器,会导致Cookies全部丢失。重启以后根本无法继续原来的网页操作了。
      

  5.   

    普通退出 很简单自己应该可以解决
    如果是浏览器  关闭  ×    用<BODY ONBEFOREload="方法()"》便可以实现
    至于你说的第三种断电情况下 我就不是很清楚了  希望楼主解决问题后散分
      

  6.   

    点击关闭按钮的时候转向一个注销页面,关闭按钮事件是 window.onunload(){....转向注销页面进行注销}。安全推出的概念是什么??断电的情况下必然session是丢掉的
      

  7.   

    只有点击 退出时  清除session值。
      

  8.   

     Session.Abandon();取消当前会话   
       Session.Clear();清除当前浏览器进程所有session 
     this.Response.Write(@"<script>window.opener=null;window.close();</script>");
    你试试这个??
      

  9.   

    这3个情况.都可以在session保存时间不长的情况下完成啊
    第一个.类似#30的代码.就推出了
    第二第三的.到session到期就over了
      

  10.   

    Session 是保存用户信息的,当页面打开20分钟用户没用操作的话Session会自动清空(适合停电)
    退出时,清空Appliction就好
      

  11.   

    用Session的话,这东西没法判断的
      

  12.   

    就研究过第一个,点退出时候,清空session,再转至登录页.
    但是如果在浏览器上点后退的话.可以退回去,只不过功能不可用.要是IFRAME的话,点了功能列表,这时候就很难看了.曾经也试图解决这个后退问题,但是无奈...放弃了。
      

  13.   

    ASP.NET的票证+session应该可以解决LZ的问题了!退出之前写个底层类,用于清除用户的登录信息!
      

  14.   

    难道使用Session方式,关浏览器、关机、断电 不自动推出吗?
      

  15.   

    怎么大家都说手工清空Session啊?遇到浏览器退出情况Session自动失效吧,反正我做的项目都自动失效。
    重启浏览器进程压根就不是刚才那个Session
      

  16.   

    所有的网站只要你不点记住登录,都默认是这个样子吧?
    Cookies有失效条件,浏览器进程级就可以。
    Session验证得话,不用管他,只要浏览器关闭了,自动就登出了。
      

  17.   

    跟asp.net毫无关系。asp.net是工作在web服务器,当浏览器发来一个命令它就临时服务一次(对于其它客户端发来的http请求也是一样)。它才不知道浏览器端的那些个琐事。这类软件设计,基本上都是针对保证拔掉网线或者直接在浏览器的地址栏访问其它网站,也能及时(比如2分钟之内)知道用户离线了,而无需去搞什么“安全退出”那种雕虫小技。如果你看到一些网页给你介绍什么“安全退出”,我敢打赌这些网页的作者还是基于对javascript很纠结,而不是基于web的全面设计。对不起,答案就不说了。其实很简单,csdn上每一个合格的web程序员都知道。