我正在一个asp.net MVC网站中构建一个聊天系统,如果用户在网站上没有任何操作超过2分钟,我将把他的状态设置为离开。
我的问题是,如何知道用户是否离线,离线意味着他关闭了网站或退出。
我知道 Membership 类中有一个 isOnline 属性,但我没有使用 Membership 来安全登录该网站。
有没有办法知道用户是否在线,
或者如何实现这个membership.IsOnline以在我的代码中实现相同的效果。
最佳答案
要了解用户是否在网站上,您可以每分钟从客户端向服务器发送一个 AJAX 请求,服务器端检查收到的请求之间的时间,看看他是否不再在页面上。
如果你想检测用户是否“AFK”,但可能仍然在他的浏览器上打开网站,你必须添加按键、鼠标按下和鼠标移动的全局事件,并且只发送 AJAX如果在最后一分钟触发了其中一个事件,则每分钟请求一次。
关于c# - 如何知道用户在网站上是否仍然在线或离线?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6903081/