如果应用程序中记录了symfony中的特定用户,我需要知道如何获取, 有没有办法获取当前用户的会话ID?
当我有一个名为is_online
的字段时,我尝试使用表格,当用户登录并注销应用程序时,我设置了它,所以当用户关闭浏览器或会话时出现问题结束,所以字段is_online
保持不变。这就是为什么我需要另一种方法来获取用户登录应用程序的原因。
任何建议都会有用。
答案 0 :(得分:4)
您可以向用户发送ajax请求,并且一旦有人不发送请求,例如1分钟将其状态更改为离线。将状态存储在某些键值存储(即MemCache)中是个好主意。在这里查看details。
答案 1 :(得分:1)
在ajax中创建类似lastonlinetstamp
和ping
方法的数据库字段,每分钟调用一次具有相同会话的服务。然后让ping服务更新lastonlinetstamp
。如果此值超过1分钟,则表示用户处于脱机状态。
但是:这会增加对服务器的请求数量。