代码之家  ›  专栏  ›  技术社区  ›  NoahD

ASP.NET MVC中的定时用户访问,初学者

  •  1
  • NoahD  · 技术社区  · 15 年前

    在ASP.NET MVC中,用什么好方法(首选方法??)来计算用户在特定页面上停留的时间?例如,我希望用户选择某个内容,然后只允许用户在30秒内执行某项操作。良好的链接或参考一本书的一页将不胜感激。

    提前谢谢!

    3 回复  |  直到 15 年前
        1
  •  3
  •   Andrew Siemer    15 年前

    您可以跟踪用户何时去某个地方以及他们在那里呆了多长时间(或者在平衡支票簿时打开了页面……您知道了)。问题是,您需要某种形式的客户端控制器,让他们在30秒内看到XYZ…然后将他们重定向到他们可以看到的下一页。因此,如果您希望用户在X个时间段内查看资源,则需要使用javascript客户端计时器,在资源过期时将其从资源中移除。这可以通过静态编码到客户机的时间(客户机可以更改)来完成,也可以通过向服务器发出AJAX请求来查看时间是否已过期来完成。也可以使用嵌入式flash播放器。这里的关键是,服务器端对客户端的控制能力不如您所需要的那么大。大多数测试站点部署某种形式的客户端javascript来跟踪用户在做什么、什么时候做什么、做多长时间!

        2
  •  1
  •   Tomas Aschan    15 年前

    一种非常简单的方法是将用户最后一次访问页面的时间存储在数据库中,例如,表中可以有字段 UserID , Page TimeStamp

        3
  •  1
  •   John Rasch    15 年前

    您可以使用JavaScript的 setTimeout() 功能:

    var timeOut = function() {
        alert('Time is up!');
    }
    
    setTimeout (timeOut, 30000);
    

    或者你可以用一个 <meta> tag :

    <meta http-equiv="refresh" content="30;url=http://www.example.com/time-is-up.html">