0

我需要知道是否有用户登录了我的网站。为此,我只有他的会话 ID。

我使用以下方法获得了此 ID:session->getId();

可能吗?

提前致谢。

4

2 回答 2

0

用户登录时向会话添加自定义字段,然后检查该字段

于 2013-10-14T15:55:05.250 回答
0

鉴于网络本质上是无状态的,很难确定特定用户是否登录到网站。

实现目标的一种方法是保留所有登录用户的运行日志以及上次访问时间。然后您可以查询该日志,如果用户上次访问时间少于 5 分钟前,您可以说该用户已登录到您的网站。这只会告诉您用户是否登录了您的网站,而不是您的网站是否是他们浏览器中的活动选项卡。

另一种获取有关您网站的活跃用户的更多“实时”信息的方法是使用SignalR 之类的东西,它允许您推送到浏览器。我过去使用 SignalR 将系统状态消息发送到浏览器并让它自动更新页面。SignalR 的伟大之处在于它维护了所有连接的客户端的内存列表。

于 2013-10-16T18:09:14.437 回答