如何将“离线”请求存储起来以便以后执行?

时间:2013-09-19 12:31:33

标签: jquery http jsf primefaces

我正在使用jsf和primefaces构建一个Web应用程序。

这是一个非常简单的考勤应用程序,基本上员工在他们开始工作时点击按钮,当他们离开当天时点击另一个按钮。单击操作的时间戳将发送到服务器,在那里处理它们并存储在数据库中。

问题是当应用程序无法访问时(例如网络问题)请求(显然)无法发送到服务器。当发生这种情况时,我想存储用户点击按钮的时间(可能是在javascript变量中,或者在cookie中),然后在网络重新启动后自动将其发送到服务器。

我已经对它进行了快速研究,但我找不到多少。 Html 5有一个“离线模式”,但我不能依赖它,因为我正在使用一些旧版浏览器(IE)。

1 个答案:

答案 0 :(得分:1)

如果您可以使用HTML5并且它已经足够,您可以使用window.localStorage。它得到了现代浏览器和IE8 +的支持。然后,当用户再次连接Internet时,您可以检查此存储。

您可以使用Firefox / Chrome开发人员工具进行实验。

Getter / Setters

window.localStorage.setItem('key','value');
window.localStorage.getItem('key');

您可以检查浏览器是否不支持 HTML5网络存储空间,您可以使用Cookie。