这是完美的,但我想保存在服务器上的本地数据。所以我需要将本地数据库与服务器上的数据库同步。同步只能是一种方式,但是在将来,我想以两种方式同步它(服务器本地DB)。
这个请求看起来很常见(或将来常见的移动web应用程序),但我找不到一个库这样做。
我知道google是在他们的移动网络应用程序(例如gmail),我发现WSPL project一个google项目,但没有源下载。
解决方法
https://github.com/orbitaloop/WebSqlSync
>开源项目QuickConnect包含一个JS库,用于将本地html5 sqlite数据库同步到服务器数据库(MysqL或其他):
http://quickconnect.pbworks.com/Using-Enterprise-Synchronization
要使用这个库,你需要使用框架的DataAccessObject来访问你的DB。它通过存储应用于数据库的所有sql请求(除了选择当然),并将它们发送到服务器工作。这是伟大的管理删除,但它有点重,如果你有很多更新,并且服务器需要使用相同的sql语言…
>来自QuickConnect的另一个项目是本地sqlite同步(在iOS或Mac OS中的Objective C中,在Java中为Android):
http://www.quickconnectfamily.org/qcdbsync/
(我认为它还存储所有sql请求的历史)
>我刚刚发现另一个有前途的JS库:persistenceJS
https://github.com/zefhemel/persistencejs
“persistence.js是一个异步Javascript对象关系映射库,您可以在浏览器中使用它,也可以在服务器上使用它(并且您可以在它们之间共享数据模型)。
他们有一个DB同步模块:DOC of persistence.synch.js
(适用于客户端上的HTML5 DB sqlite或Google Gears,以及服务器上的MysqL)
>还有Impel.inTouch。它看起来很容易使用(包括PHP文件),但是你必须在客户端使用Mootools框架:
http://impel.simulacre.org/api/Impel.inTouch
> Sencha还有一个同步服务:Sencha.io。看起来不错,但它依赖于Sencha Touch框架: