您的位置:首页 > 运维架构 > 网站架构

判断账号重复登录 网站

2017-01-11 17:14 232 查看
判断一个网站用户账号是否重复登录,有两种表现形式:

第一种:同一个账号,甲先在自己电脑上登录,正在使用中。。。。,乙又用该账号在另一个地方登录,此时乙能正常登录,甲会被迫下线。

同一个账号,用户甲先登录,输入正确的账号密码,登录成功的同时,由甲发起的登录已经产生了一个唯一的session,只要甲不关闭此次会话(关浏览器),甲登录产生的这个session就不会变,将其放到静态的变量中保存;当用户乙用不同的浏览器或者另一台电脑登录同一个账号,同样会产生一个和乙此次登录相关并且唯一的session,同样将这个session保存到之前的静态变量中。然后只需要再在拦截器里面判断当前用户登录的session与静态变量中的session是否相等,如果不相等,就清空当前登录session,迫使退出登录。

第二种:同一个账号,甲先登录正常使用中,乙再在另一个地方登录,此时乙不能将甲挤下线,无法登录

甲登录时,将当前session存在静态变量中,乙去登录时,先判断静态变量中是否有当前账号对应的session值,再判断乙登录时的session于静态变量中的session是否相等,如果不相等,中断请求,在页面做出相应的提示。

个人觉得第一种方法要常用一些,如果同一个账号,如果在已经登录的情况下被挤下线 ,你可以用同样的方式再登录一次再把别人挤下去,而如果是第二种方式,如果账号被人登录了,而你又必须要登录该账号进行一些操作,就比较麻烦了,因为后面登录的人无法将前面的人挤下线。

当然,这个得看具体的情况,来选择适合的表现方式。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息