jquery - 如何存储请求 "offline"以便稍后执行?

标签 jquery http jsf primefaces

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

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

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

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

最佳答案

如果您可以使用 HTML5 并且它对您来说足够了,您可以使用 window.localStorage。它受到现代浏览器和 IE8+ 的支持。然后您可以在用户再次连接互联网时检查此存储。

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

setter/getter / setter/getter

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

而且你可以检查浏览器是否不支持HTML5 网络存储,你可以使用cookies。

关于jquery - 如何存储请求 "offline"以便稍后执行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18894706/

相关文章:

http - 压缩从浏览器发送的 HTTP Post 数据

java - JSF 值表达式和 bean,它们如何工作?

node.js - 状态错误 : Insecure HTTP is not allowed by platform:

Java 非阻塞 HTTP 服务器

jquery - 更改工具栏 OnsenUi 的颜色

javascript - 通过 php 将 Annotorius 注释数据从 Image Slider 保存到 mySQL

java - @all 在 JSF Ajax 中不起作用

java - 如何修复此异常 java.lang.String 无法转换为用户定义的类型

jquery - 具有动态间隔文本的菜单以覆盖整个宽度

javascript - 嵌套菜单停止触发未直接点击<li>s