我的实现:webSocket
其他实现:
1、http://www.caotama.com/86559.html
不要使用cookie保持登录。
1.登陆时使用帐号密码登录,后端清除该账户所有token,并新建一个token返回给客户端,客户端存到localStorage
2.别处登录的客户端由于token被系统清除,所以是未登录状态,如果本地有token,则证明异地登录,如果没有token,证明没有登陆过
服务端存一个sessionid,有别处登陆时把sessionid删除,检查不到sessionid就没有登录
这个主要是后台的工作吧,前端只要跟后台商议好当接口返回某一个特殊的状态时,就出现弹出框,然后做相应处理。
我觉得是两个子问题,(1)需要在服务器端记录不同的登录,每次登录分配一个token,同时存储与用户的对应关系,通用地说:user -> [token],你可以控制有多少个token同时存在。 (2)如果某个用户的token多于制定数——你的需求是1——那么应该立即通知通知其它token的客户端,这是如何通知让其尽快下线的问题,解决方案很多啦
2、使用框架:Shiro + SpringBoot + redis https://blog.csdn.net/shadowTime/article/details/80483377