【问题标题】:Session times out although the user has been typing in the form尽管用户一直在输入表单,但会话超时
【发布时间】:2015-01-20 11:51:51
【问题描述】:

在我的 asp.net Web 应用程序中,会话设置为其默认超时值。据我了解,一旦应用程序空闲并且没有对其执行任何操作,超时就会开始计算分钟数。但是,当我打开表格并开始填写表格时,如果我填写表格的时间超过 20 分钟,那么当我按下“保存”时,应用程序就会注销。我不是不活动的,但实际上我正在填写表格中的数据,所以我不希望会话超时。

有没有办法让会话只开始计算完全没有操作的时间,并让它“感知”用户的输入?

【问题讨论】:

    标签: asp.net session


    【解决方案1】:

    您正在寻找的东西称为“心跳”。有很多方法可以实现这一点 - 最简单的方法取决于您页面中已有的其他资产 - jQuery、AJAX 控件等等。

    基本前提是它在后台向服务器发送一个请求,向服务器有效地说“我还在这里”,以阻止超时发生。理想情况下,您的解决方案应该检查 javascript 中的 onkeypress 以确保用户在那里并填写表单。

    搜索“heartbeat formfilling javascript asp.net”会导致一些示例想法。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-03-19
      • 1970-01-01
      • 2015-06-26
      • 2018-07-22
      • 1970-01-01
      • 2017-05-19
      • 2013-07-04
      • 1970-01-01
      相关资源
      最近更新 更多