【问题标题】:Creating Session Expiration Limit in MVc 4.0在 MVc 4.0 中创建会话过期限制
【发布时间】:2014-01-08 08:24:35
【问题描述】:

我有一个实时问题。我想在 4 分钟后向用户显示您的会话将在接下来的 1 分钟内到期的弹出窗口。如果用户单击继续,请单击继续以保持活动状态,然后最终增加会话时间。如何在 Asp.net MVC 3.0 中实现这一点而不使用任何第三方控件。

【问题讨论】:

  • 在 js 中启动一个计时器,4 分钟后询问,如果用户单击继续发送 ajax 调用到单独的操作以更新会话?

标签: c# .net asp.net-mvc-3 asp.net-mvc-4 jquery


【解决方案1】:

这是一个简单的示例,只是从 w3c 学校文档中收集的。我想通过使用 jQuery、SignalR 等会有其他方法,但你说没有第三方控件。

var myVar=setInterval(function(){myTimer()},240000);

function myTimer()
{
    // perform a reset when we enter the function
    window.clearInterval(myVar);

    var r=confirm("Session will expire in 1 minute. Click OK to stay.");
    if (r==true)
    {
        // perform ajax call to renew the session.
        // perform other task like refresh elements or even the page.

        // get response from ajax call, then restart the interval.
    }   
}

【讨论】:

  • 请告诉我一件事,如何重新发送会话。只是为它分配一个值将重置它以及我必须在 calncel 中执行的操作,以便它不会重置会话。请给我建议。
  • 这取决于您如何定义会话。你只是依靠内置的会话吗?这将更新来自客户端(浏览器)的每个请求的计时器。
  • 如果我没记错的话,会话的默认时间跨度是 20 分钟。
  • 是的,先生。默认为 20 分钟,我只是这样设置会话。在登录时,我做 :: Session["LoginID"]="Bla Bla";
猜你喜欢
  • 2013-09-11
  • 1970-01-01
  • 2015-01-14
  • 1970-01-01
  • 2014-08-16
  • 1970-01-01
  • 1970-01-01
  • 2014-08-30
相关资源
最近更新 更多