【问题标题】:Managing Session Timeouts in ASP.NET when using ASP.NET GenericHandlers使用 ASP.NET GenericHandlers 时管理 ASP.NET 中的会话超时
【发布时间】:2011-01-01 15:23:56
【问题描述】:

例如,我有一个使用 jQuery 作为客户端框架的 Web 应用程序。现在大部分页面都通过使用 AJAX 实现功能,并通过使用通用处理程序 (.ashx) 与服务器通信。

现在我有一个问题,我想看看当我的用户会话到期时处理这些请求的最佳解决方案是什么。

例如,一个用户登录,离开他的浏览器 15 分钟,然后他按下一个按钮,这将创建一个对处理程序的请求,现在从服务器端,当我尝试读取会话变量时,显然它将是空(会话已过期)。将用户重定向回登录页面的最佳方式是什么。

【问题讨论】:

    标签: asp.net ajax session httphandler


    【解决方案1】:

    我们通过稍微不同的方法来解决这种情况。我们没有尝试让所有的 jQuery 调用处理这种错误情况,而是使用 javascript 在客户端上实现了一个并行超时系统。在 ASP.NET 会话超时前一分钟,我们在浏览器上弹出一个对话框,警告用户“您一直处于非活动状态,即将退出。单击此处保持登录状态。”我们还在对话框中加入了一些倒计时。如果他们点击保持登录状态,我们会向服务器发送另一个 jQuery 调用以重置会话超时。

    因此,除非用户禁用了 javascript(在这种情况下,应用程序无论如何都无法运行),否则我们不可能在 ASP.NET 会话超时后进行 jQuery 调用。

    【讨论】:

      猜你喜欢
      • 2011-01-18
      • 1970-01-01
      • 2016-03-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-10-13
      相关资源
      最近更新 更多