微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何在用户保存表单时处理会话超时?

我们的系统有一个小时的会话长度.有时,这会在用户按下表单上的“保存”按钮之前到期.当会话超时时,它们会被踢回登录页面并且它们的数据会丢失.这显然很糟糕.

我正在试图想出一个更好的方法来处理这种情况.这就是我提出的:

>在每个页面加载时,在JavaScript中启动一个55分钟的计时器.当它用完时,弹出一条消息,说“你的会话即将过期,如果你还活着,请点击这里”.

>单击该链接会将AJAX请求发送回服务器以重置会话
>如果他们在接下来的5分钟内没有点击链接,因为他们已经合法地不得不离开他们的计算机一分钟,但仍然有大量的工作形式怎么办?

>每30秒左右轮询一次服务器以查明其会话何时到期,然后在弹出窗口中显示登录屏幕

>让会议到期.将POST数据复制到安全的地方(其中??).当他们尝试保存表单时,他们将像往常一样被踢到登录表单.成功登录后,将数据重新发布到正确的位置.

其他人如何处理这种情况?什么是最好/最简单的方法

解决方法

好.除了人们所说的“如果用户在表单上花费超过1小时,表单有问题”或“如果用户长时间闲置,这是他们的问题,只需将它们扔回登录页面”,我们与真实的人生活在一个真实的世界中,时间就是金钱.假设您经营一家网上商店,用户可以在他们的购物车中放入价值10,000美元的电话,他们的电话铃声和他们的女朋友会谈1小时……假设您的表单是一个textarea,用户决定写下他们的整个生命…假设您的应用是一个网络邮件.电子邮件正文是表格,对吧?我们不希望用户丢失他们花了2个小时写给亲人或重要客户的电子邮件,我们保存了草稿!有许多不同的可能性可以证明计时器,存储数据和 pinging the server.

如果您在时间/金钱关键表单页面上,请不要犹豫刷新服务器并保持会话活动.监控一些事件,如按键,点击等.这将以合法的方式刷新会话,只要它提供用户在那里的线索.

>使用浏览器事件甚至在提交表单之前保持会话处于活动状态>如果会话即将到期,请另存为草稿.>如果会话已过期,请使用灯箱再次获取凭据.

原文地址:https://www.jb51.cc/html/227393.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐