16

我在寻找一个JavaScript库,可以让我的数据存储在客户端数据库,并在回地面自动同步数据库恢复到服务器的数据库JavaScript库的客户端存储与服务器端同步

最好的东西,支持发动机的variaty以同样的方式为jStore jQuery不会

环顾四周,我可以找到任何

回答

1

荫不是100%肯定,但我认为心不是这样一个框架。我建议看看Google Gears

Google Gears支持客户端的离线存储。

另一种方法是检查出的TidlyWiki的源代码。他们创建了一个wiki系统,它存储了客户端的所有数据。

+1

离线存储不像以前那么困难,有一些库支持Gears,HTML5本地数据库和闪存。原来的问题更多的是与服务器的后台同步(当在线) – Javier

+1

另外,谷歌齿轮正在被丢弃。 –

1

我不知道现在有任何图书馆。即使艰难,这是一个可能的想法,我必须说,我不确定是否制作这样的图书馆是一项很好的工作。

它必须提供如何将服务器数据暴露在库,如何计算增量,等等的例子。这会迫使开发人员根据库的协议更改此服务器端代码。 这对于新应用程序和网站来说可能很好,但是对于任何现有网站来说,这可能是一种痛苦,具有特定的数据结构,因此努力实现这一点并不比开发自己的Javascript更适合于使用已经暴露的当前数据由应用程序。 所有这些在潜在的安全问题之上都会很难在一个通用的JavaScript库中进行管理。

恕我直言,这是一个伟大的想法,使束或插件特定的ORM基于MVC框架,例如Ruby on Rails的或Django的。由于框架本身具有对数据结构的抽象以及已经捆绑在一起的许多安全修补程序,因此使用它可以更加可重用且更优雅。

0

我一直在做这方面的工作。它似乎是几乎可能使用Google文档。大部分API都可以通过Javascript访问。不幸的是,例外包括诸如上传和下载之类的东西,所以虽然可以在浏览器中枚举文档,创建文件,更改元数据等,但实际上获取数据更困难。

谷歌电子表格做具有访问单个细胞的JavaScript API,所以它是理论上可以存储在电子表格中的数据。不幸的是,在API中还有另一个整体,它似乎很难将数据写入先前没有数据的单元格,这意味着一旦创建了空的电子表格,就不能填充它。

3

Store.js处理客户端存储非常好。请注意,它支持IE6 +以及其他浏览器。对于服务器端存储来说,你不妨制作自己的脚本,因为它不应该很难。

+2

根据他们的文档:“store.js在可用时使用localStorage,并回退IE6和IE7中的userData行为”。它不存储到Web SQL数据库或IndexedDB。它也没有为数据同步做任何事情。 –

0

就我所知,Safari,Chrome和Opera都基于SQLite。 SQLite有一个.dump命令,它不仅非常适合恢复数据库,而且可以与其他数据库同步。 因此,可以使用.dump从Javascript数据库中调用此函数,并在必要时修改转储并将其上载到服务器数据库中执行。

但是,您将需要小心SQL注入尝试。

+0

你可以从Javascript访问.dump吗? – oivvio

+0

这对于本地数据库备份来说看起来不错,但这不适用于CRUD操作(例如可伸缩性)。 –

3

由于问了这个问题,在本地存储和客户端数据库上进行了很多工作。

Dive Into HTML5有一个很好的本地存储选项的概述。

还有几种跨平台的JavaScript存储库可用,包括Lawnchairpersistence.js

0

你试过jsonengine

不知道这个项目有多少活着,但这回答了所有需求。

+0

据我所知,'jsonengine'是服务器端RESTful API的实现。它提供了将数据保存到服务器或客户端本地存储的使用示例。但是,对于客户端 - 服务器同步没有做任何事情。 –

0

Firebase这么做,虽然它不是关系模型