以备后用,现转来放着:
你可以试试这样,在浏览器关闭的时候open出一个隐藏的窗口来注销session,注销后再close这个页面
<script>
function window.onbeforeunload()
{
if(event.clientX>document.body.clientWidth&&event.clientY<0||event.altKey)
{
window.open('out.jsp','','height=100,width=100,top=5000,left=5000,toolbar=no,menubar=no,scrollbars=no,resizable=no,location=no, status=no')
}
}
</script>
out.jsp
----------------------------
<%
//这里注销session
%>
<script>
window.close();
</script>
---------------------------------------------------------------------------------------------------
方法二:
只是现在拦截弹出窗口的插件太多了,好像比较不保险
怕拦截窗口的插件给拦截的话可以是是在脚本中用xmlhttp :
<script>
function window.onbeforeunload()
{
if(event.clientX>document.body.clientWidth&&event.clientY<0||event.altKey)
{
//在这里用xmlhttp
}
}
//用xmlhttp去注销,不开新窗口
<script>
function window.onbeforeunload()
{
if(event.clientX>document.body.clientWidth&&event.clientY<0||event.altKey)
{
var xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
xmlhttp.open("GET", "out.jsp", false);
xmlhttp.send();
}
}
</script>
---------------------------------------------------------------------------------------------------
方法三:
<script language="javaScript">
function removeline(){
if(event.clientX<0&&event.clientY<0)
{
document.write('<iframe width="100" height="100" src="page/removeline.jsp"></iframe><OBJECT classid=CLSID:8856F961-340A-11D0-A96B-00C04FD705A2 height=0 id=WebBrowser width=0></OBJECT>');
document.all.WebBrowser.ExecWB(45,1);
}
}
</script>
调用这个吧用 height=0 width=0 <iframe> src 里调用结束 session 程序就可以
分享到:
相关推荐
注销Session的过程,即“session注销”,主要是销毁与当前用户相关的Session数据,以及清除浏览器中的Session ID。在提供的代码片段中,可以看到以下几步关键操作: 1. **`session_start()`**:这是开始Session的...
然而,在某些情况下,比如用户注销或关闭浏览器时,我们需要清空Session,以消除用户的所有相关信息。本文将通过一个具体的例子来详细讲解如何实现这个功能。 首先,我们要理解Session的工作原理。在服务器接收到...
从一个客户打开浏览器并连接到服务器开始,到客户关闭浏览器离开这个服务器结束,被称为一个会话。 Session 对象的 Id 当一个客户首次访问服务器上的一个 JSP 页面时,JSP 引擎产生一个 Session 对象,同时分配一...
在注销session时,不能简单使用unset($_SESSION)来销毁session变量。这是因为这样的操作只是在当前脚本中移除了session数组中的变量,但不会影响到服务器上存储的session文件。正确的做法是使用$_SESSION = array();...
- 用户注销或手动关闭浏览器,通常Session并不会立即消失,除非程序明确指示删除Session。因为浏览器关闭时不会通知服务器,所以Session通常持续到服务器端的超时时间或被显式销毁。 4. Session的管理: - 服务器...
但如果在关闭浏览器前,用户已经通过其他方式(如手动注销)结束了会话,则即使浏览器未关闭,Session也可能被销毁。 ### 总结 Session cookies是维持Web应用程序中用户状态的关键技术之一。通过合理的管理和配置...
为了实现用户退出页面时自动清除Session,可以通过监听浏览器的`onbeforeunload`事件,将用户重定向到一个专门用来注销的页面(如`logout.jsp`),在这个页面中执行Session的清除操作。 ```html ``` 其中`logout....
- 如果参数设为-1,则表示Session永远不会过期,除非用户显式注销或关闭浏览器。 #### 结论 通过上述三种方式,开发者可以根据实际应用场景灵活选择最适合的方式来设定Tomcat中的Session过期时间。无论是全局范围...
**问题 3:在注销或关闭浏览器后Session未销毁** 在某些情况下,用户注销或者关闭浏览器后,Session仍然存在。这可能是因为服务器上的Session生命周期设置过长,或者由于使用了持久化Cookie。解决方法是设置合理的...
例如,当用户注销或关闭浏览器时,应从memcached中删除对应的session。 5. **session编码与解码**:由于memcached只能存储字符串,所以需要自定义session编码器和解码器,将Java对象序列化成字节串并存储,反之则反...
例如,如果用户关闭浏览器或清空cookie,session会丢失,但此时用户可能仍在使用应用。因此,更精确的在线人数统计可能需要结合其他技术,如Cookie、数据库记录或实时推送服务。 总结,JavaWeb通过session统计在线...
- 在用户注销或关闭浏览器时,最好清除Session,避免占用服务器资源。可以使用Session.Abandon()方法。 综上所述,ASP.NET中的Session是维持用户状态的关键工具,它在登录验证、导航控制和其他多种场景中都发挥着...
在Java Web开发中,用户登录和注销功能是核心部分,而用户注销后点击浏览器的返回按钮,导致页面刷新并重新登录的问题是一个常见的困扰。这个问题的出现主要是由于浏览器缓存了用户登录时的表单信息,当用户注销后,...
在Web应用中,注销通常通过点击页面上的“退出”按钮触发,这将发送一个请求到服务器,清除用户的session信息。 实现注销功能的代码资源可能涉及到以下几个关键点: 1. **会话管理**:在Web开发中,用户登录后,...
6. **处理session过期**:默认情况下,session会在浏览器关闭时失效。若需更长的会话时间,可设置`cookie.maxAge`来指定session的有效期。 ```javascript app.use(session({ ..., cookie: { maxAge: 3600000 },...
3. 生命周期:Cookie的生命周期可自定义,也可设置为浏览器关闭时失效;Session的默认生命周期为30分钟,服务器会定期检查是否过期,过期则自动销毁。 总结来说,基于Session的用户登录注销机制在JavaWeb中广泛使用...
当用户打开浏览器与服务器建立连接时,一个新的Session开始,直到用户关闭浏览器或Session超时,Session结束。 将数据装载到Session对象中,可按照以下步骤操作: 1. 在ASP.NET页面或HTTP模块中,找到合适的位置...
当用户关闭浏览器或Cookie丢失,Session通常也会失效,导致用户登出。 在Destoon系统中,用户登录状态通常通过Cookie中的`auth`值来维持。然而,360浏览器可能存在一些特定的行为,如严格的隐私设置或某些安全功能...
此外,如果用户关闭浏览器或注销登录,之前添加的购物车信息将丢失。 使用 session 实现购物车 使用 session 实现购物车可以解决上述问题,但是这种方法也有缺陷。如果用户没有登录或登录后没有添加购物车信息,...
- 通过监听浏览器关闭事件来触发注销Session的逻辑。 4. **发送注销指令**: - 当检测到浏览器关闭事件时,向服务器发送一个注销Session的请求。 5. **关闭注销页面**: - 注销完成后,自动关闭BHO注销页面。 6....