redis session共享了,如果用户退出登陆,如何清除该账户所有客户端的session?
如有同一个账户登陆google浏览器了,又在ie浏览器上登陆了同一个账户,假如google浏览器用户退出了登陆,ie浏览器的session如何自动清除?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
如有同一个账户登陆google浏览器了,又在ie浏览器上登陆了同一个账户,假如google浏览器用户退出了登陆,ie浏览器的session如何自动清除?
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(3)
对,现在我的代码就是根据登录用户名来清除所有注销用户所对应的session,要便利redis里面的所有value值,确实开销大
回复
可以在用户登录后同时创建一个用户对应的key为用户名,value为sessionid的list的key-value。等用户注销之后,直接根据这个kv,找到用户,以及对应的sessionid,并同时清空这个kv以及session。
这本来就是两个session(会话),清除不了。
除非你能判断这两个浏览器是同一个人在使用。
一定要清除的话,根据注销用户的用户名,根据session中登录用户名来清除所有注销用户所对应的session,但这样开销很大。