异步客户端javascript进程与服务器对话

Asynchronous client javascript process to talk to server

本文关键字:服务器 对话 进程 客户端 javascript 异步      更新时间:2023-09-26

我正在考虑开发一个具有离线功能的web应用程序。我正在考虑将所有客户端表单回发格式化为JSON对象,并在表单回发中将这些直接写入HTML5 LocalStorage。然后,我将有一个单独的进程,异步地轮询LocalStorage中的JSON条目,并将这些条目提交给服务器。此服务器同步进程将没有任何UI上下文。这样,实际的用户UI就会非常灵敏。(我将使用缓存清单文件来处理其他离线问题)。

这是一个合理的计划吗?异步JSON post过程的最佳技术实现是什么?(也许是一个计时器,轮询LocalStorage并每秒检查服务器连接?)是否有更好的方法来实现服务器同步(如果我在服务器上实现,我会写一个服务-是否有等效的javascript机制?)

谢谢。

去年我做了一些离线测试,只在HTML5浏览器上运行。

该应用基于JSON服务,并使用我们的lib: pure.js在客户端呈现。使用类似的架构,即使没有离线访问,你也会得到一个响应非常快的应用程序。

如果JSON服务调用失败,它假设我们离线,并使用本地存储代替。
当一个呼叫在线完成时,它检查离线队列的状态并在需要时同步它。

但随后我开始在客户端复制一些服务器验证逻辑。发现存储的数据没有加密。即使是像javascript这样的东西,你也需要在某个地方设置密钥或设置密码密钥等…
那你对客户隐瞒了什么?一切吗?最近查看的项目?如何处理数据更改冲突?

我敢打赌,今天的移动网络通常是在线的,让应用程序在手机上运行得很好比试图让它离线更容易。
我们现在放弃了离线的努力。

最后我只使用了一个简单的setInterval,如下所示:

setInterval("SyncLocalStorageToServer()", 4000); // Loop at 4 second intervals

,然后调用一个函数,该函数循环localStorage条目,依次将每个条目发送到服务器。