比如客户端在关闭浏览器之前响应OnBeforeUnload消息,然后通知服务器端结束当前session?之所以这样做是因为需要当客户端关闭浏览器的同时,服务器端的session也立即结束.

解决方案 »

  1.   

    那个OnBeforeUnload真的好用吗?
    如果按F5刷新页面如何?或者直接KILL掉进程?在OnBeforeUnload的方法里发一个请求,在请求的页面里处理相关业务并关闭session,这样ok不?
      

  2.   

    每个有权限管理的项目都会有一个logout的服务的吧.
    在onbeforeunload的时候去做这个请求就行了.
      

  3.   

    可以单从客户端下手,但是比较取巧。
    session的实现无非是服务器端生成session文件,客户端一次会话就分配一把钥匙(cookie存储的sessionID),然后通过把钥匙去读取相应的session文件。
    所以,你可以触发OnBeforeUnload把cookie里那把钥匙设置为过期失效既可。
      

  4.   

    OnBeforeUnload, OnUnload 这些东西最好别用, 用起来会后悔的
      

  5.   

    HTTP本来就是无状态协议,LZ不要多想了
    除非LZ开发个浏览器给你的客户使用
      

  6.   

    放弃了。
    为了不让session过期,我在客户端加了个timer,每隔一段时间向server callback一下。