如果用户非手动退出登录,比如关闭浏览器,这时候在Redis中怎么知道,是哪个用户退出登录了??


服务器是NodeJs,用redis存储session,这时候在Redis中怎么知道,是哪个用户退出登录了??

Express Redis node.js

三途川D摆渡人 10 years, 2 months ago

浏览器关闭失效的是cookie里的session,而他的失效方法是,后台有个全局进程定时扫描,当发现失效时,便删除。

ike1212 answered 10 years, 2 months ago

浏览器有unload事件,可以在此做些文章

戦場原くろこ answered 10 years, 2 months ago

可能通过long poll,websocket或定期发送心跳包到服务器。

小吐槽点一枚 answered 10 years, 2 months ago

redis session key 设置 expire 过期时间,比如1小时,用户刷新页面,这个过期时间也刷新(session组件每次update expire) ; 用户没有动作,1小时后 session 失效用户就登出。

Single魄 answered 10 years, 2 months ago

Your Answer