【问题标题】:Asp.net-Run a global method after session time outing or browser closingAsp.net-会话超时或浏览器关闭后运行全局方法
【发布时间】:2018-09-19 12:50:35
【问题描述】:

我在我的项目 asp、C# 网站中使用会话成为在线用户,但是对于离线查看我的成员我有一些问题:
用户的以下选项可以离线:
1:用户可以按下退出按钮:这很好用,因为我通过后面的代码将此用户会话 ID 添加到数据库中的离线用户表中
2:关闭浏览器: 这是我的问题我可以将会话 ID 添加到数据库中的脱机用户表中吗
3:15 分钟后会话超时: 这也是我的问题如何将此会话 ID 添加到数据库中的脱机用户表中

【问题讨论】:

  • 为什么要跟踪某人离线?
  • 我设计了一个页面来查看我所有的网站成员都有这种情况,我在登录自己的帐户后使用会话来了解有效用户。很好 。但是我怎样才能显示离线成员?或者当用户关闭浏览器并且会话超时时,我该怎么办?
  • 简短的回答是 - 这很难。您可以通过让页面上的 JS 定期 ping 回服务器“浏览器仍处于打开状态”来实现它。我强烈建议您重新考虑是否需要此要求。

标签: c# asp.net session session-variables session-state


【解决方案1】:

简单的解决方案是在用户关闭浏览器时使用 javascript 函数处理 Signout

您可以使用 onunloadonbeforeunload 执行此操作

<script type="text/javascript">

window.onunload = function()
{
   //code for signout by ajax calling the server method, or just 
document.getElementById("Signout_Button").click();
}

</script>

【讨论】:

  • 我在哪里可以调用这个脚本来关闭浏览器?请详细指导我
  • @aram window.onunload 函数会在浏览器关闭时自动调用
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-12-28
  • 2013-08-11
相关资源
最近更新 更多