.net登陆用户关闭浏览器或者强制关机,如何修改数据库?

comcuz 2018-06-08 09:15:54
用户表 user
字段 online (该字段判断用户是否登陆)
用户登陆 用户的online字段值为0,用户点击退出用户该字段值为1。
问题:如何用户不点击退出按钮,直接关闭浏览器,或者强制关机,如果将online字段值修改为1?
Session
...全文
1227 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
Jason_Mao1 2018-06-09
  • 打赏
  • 举报
回复
这个问题说起来就比较繁琐了,不能简单的使用session 来做到这一点,据我所知有2种方式,1 session 加 cookie 来实现,2 使用客户端和服务器做一个心跳包,如果下一个时间段没有得到相应就认为是掉线了,再更新数据库状态 。
正怒月神 2018-06-08
  • 打赏
  • 举报
回复
心跳包,就是用来检测客户端是否还活着的。
正怒月神 2018-06-08
  • 打赏
  • 举报
回复
引用 3 楼 xomix 的回复:
[quote=引用 楼主 comcuz 的回复:] 用户表 user 字段 online (该字段判断用户是否登陆) 用户登陆 用户的online字段值为0,用户点击退出用户该字段值为1。 问题:如何用户不点击退出按钮,直接关闭浏览器,或者强制关机,如果将online字段值修改为1? Session
这就是为什么要做一个心跳,你不能判断他是不是关闭了,但是你能判断他是不是在,他在的时候间隔一段时间更新一下自己的最后在线时间(例如3分钟),最后在线时间+间隔时间小于当前时间时就能知道他因为各种奇怪的不能捕获的原因下线了。 这就是心跳信息。[/quote] 这才是正常的解决方案
  • 打赏
  • 举报
回复
引用 楼主 comcuz 的回复:
用户表 user 字段 online (该字段判断用户是否登陆) 用户登陆 用户的online字段值为0,用户点击退出用户该字段值为1。 问题:如何用户不点击退出按钮,直接关闭浏览器,或者强制关机,如果将online字段值修改为1? Session
这就是为什么要做一个心跳,你不能判断他是不是关闭了,但是你能判断他是不是在,他在的时候间隔一段时间更新一下自己的最后在线时间(例如3分钟),最后在线时间+间隔时间小于当前时间时就能知道他因为各种奇怪的不能捕获的原因下线了。 这就是心跳信息。
丰云 2018-06-08
  • 打赏
  • 举报
回复
关闭浏览器关闭网页,貌似可以捕获事件,但都来不及给服务器传递消息,仅仅只能做前端的响应, 至于关机。。。。呵呵。。。。
  • 打赏
  • 举报
回复
没有这回事儿,不能。 别说强制关机了,最常见的是网“断”了,你说怎么修改数据库?

62,054

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧