【问题标题】:AJAX synchronous (SJAX) on session restore会话还原上的 AJAX 同步 (SJAX)
【发布时间】:2010-10-05 23:45:07
【问题描述】:

我有一个大型网页(经典 ASP),其中包含用户需要的大量信息,因此需要大量输入。用户的行为是他会随着时间的推移填写信息,在提交之前分析它和其他耗时的过程。问题是,即使会话超时设置为合理的 30 分钟,我经常收到投诉,即在提交时,用户收到超时消息并丢失了他之前填写的所有工作。我认为如果会话被放弃,检查提交事件会很优雅,在这种情况下会出现一个登录表单。通过使用 Ajax 同步,对于会话检查和登录本身,网页的状态将保持不变,允许用户在会话恢复后继续提交。

但是,我一直在阅读有关同步的危险,以及建议如何尽可能避免同步。对我来说,这似乎是需要同步的情况之一,但我之前没有找到任何人这样做过。 我正在寻找关于这是否是一个好的行动方案的建议,使用 Ajax 同步进行会话恢复。

谢谢。

【问题讨论】:

    标签: ajax session restore synchronous


    【解决方案1】:

    这里不需要做同步请求。您可以取消表单提交(return falseevent.preventDefault() 来自提交处理程序),启动异步 XMLHttpRequest 进行检查,然后在 AJAX 响应处理程序中显示一条消息或重新启动表单提交(form.submit())为合适。

    如果导致这些问题,我建议 30 分钟可能不是一个合理的会话超时。更长的超时时间和/或让表单 ping 服务器以保持会话活动,对于用户来说可能是一种更方便的方法。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-08-17
      • 1970-01-01
      • 1970-01-01
      • 2023-03-15
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多