客户希望如果没有操作在30分钟後js往session放变量过期,并且自动进行注销的操作
显然服务器没有提供这方面的支持,所以只能从客户端下功夫
实现的方式很简单,在js中记錄进入页面的时间通常用户的操作都会导致页面的刷新和url的变动,所以在公共的包含文件中加上如下的代码1. 记录进入页面的时间。 2. 设置一个定时器检查这个时间也现在时间的差值是否大于js往session放变量过期的时间,也就是30分钟
不过现在系统中存在一部分dwr的ajax方法和操作。這些ajax操作室不会刷新页面的那也就没办法更新到globalLastjs往session放变量Time了,所以必须在每次dwr操作之前对这个时间进行更新幸好dwr都提供了方法,不然烸个dwr方法都要改那就惨了。
setPreHook可以再每次dwr远程调用之前运行指定的函数
所以,再加上如下的代码就可以了:
应用于第三方接入,比如新浪与微博登录.
我期望的效果是,当一个处于登录状态,另外一个登录会迫使之前的登陆下线.
//调用QC.Login方法指定btnId参数将按钮绑定在容器节点中