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

标签 jquery http jsf primefaces

我正在使用 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/

相关文章:

javascript - 隐藏未选中的单选按钮

c++ - libcurl一次加载整个页面吗?

http - 对于401响应(尤其是REST API),WWW-Authenticate应该包含什么?

http - 在 HAProxy 上重定向

javascript - Angular js : Unable to create directive

php - 使用codeigniter仅选择sql中的匹配值

java - 无法保留实体。 EJB异常

jsf - 在时间间隔后使特定的托管 bean 实例过期

javascript - 菜单性能问题

java - 如何在“JSF”中“隐藏”文本的最后一部分