扫码关注官方订阅号
前端实现同一用户,当在异地登陆本地被踢出,出现弹出框(您的账号已经在异地登陆,确定 取消)点确定返回到登陆页,求大神指导 谢谢
走同样的路,发现不同的人生
不要使用cookie保持登录。1.登陆时使用帐号密码登录,后端清除该账户所有token,并新建一个token返回给客户端,客户端存到localStorage2.别处登录的客户端由于token被系统清除,所以是未登录状态,如果本地有token,则证明异地登录,如果没有token,证明没有登陆过
我觉得是两个子问题,(1)需要在服务器端记录不同的登录,每次登录分配一个token,同时存储与用户的对应关系,通用地说:user -> [token],你可以控制有多少个token同时存在。 (2)如果某个用户的token多于制定数——你的需求是1——那么应该立即通知通知其它token的客户端,这是如何通知让其尽快下线的问题,解决方案很多啦
服务端存一个sessionid,有别处登陆时把sessionid删除,检查不到sessionid就没有登录
这个主要是后台的工作吧,前端只要跟后台商议好当接口返回某一个特殊的状态时,就出现弹出框,然后做相应处理。
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
不要使用cookie保持登录。
1.登陆时使用帐号密码登录,后端清除该账户所有token,并新建一个token返回给客户端,客户端存到localStorage
2.别处登录的客户端由于token被系统清除,所以是未登录状态,如果本地有token,则证明异地登录,如果没有token,证明没有登陆过
我觉得是两个子问题,(1)需要在服务器端记录不同的登录,每次登录分配一个token,同时存储与用户的对应关系,通用地说:user -> [token],你可以控制有多少个token同时存在。 (2)如果某个用户的token多于制定数——你的需求是1——那么应该立即通知通知其它token的客户端,这是如何通知让其尽快下线的问题,解决方案很多啦
服务端存一个sessionid,有别处登陆时把sessionid删除,检查不到sessionid就没有登录
这个主要是后台的工作吧,前端只要跟后台商议好当接口返回某一个特殊的状态时,就出现弹出框,然后做相应处理。