我正在使用 jsf 和 primefaces 构建一个 Web 应用程序。
这是一个非常简单的考勤应用程序,基本上员工在开始工作时单击一个按钮,当他们离开一天时单击另一个按钮。点击 Action 的时间戳被发送到服务器,在那里它们被处理并存储在数据库中。
问题是当应用程序无法访问时(例如网络问题),请求(显然)无法发送到服务器。发生这种情况时,我想存储用户单击按钮的时间(可能在 javascript 变量或 cookie 中),然后在网络备份后自动将其发送到服务器。
我已经对此进行了快速研究,但没有发现太多。 Html 5 有一个“离线模式”,但我不能依赖它,因为我正在使用一些旧版浏览器 (IE)。
最佳答案
如果您可以使用 HTML5 并且对您来说已经足够了,您可以使用 window.localStorage
.现代浏览器和 IE8+ 都支持它。然后您可以在用户再次连接 Internet 时检查此存储。
您可以使用 Firefox/Chrome 开发者工具进行实验。
setter/getter /二传手
window.localStorage.setItem('key','value');
window.localStorage.getItem('key');
并且您可以检查浏览器是否不支持 HTML5 网络存储,您可以使用 cookie。
关于jquery - 如何存储请求 "offline"以便稍后执行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18894706/