一尘不染

与服务器同步本地HTML5 DB(WebSQL存储,SQLite)的最佳方法(2路同步)

html

我正在使用本地数据库(使用html5webstorage)开发一个移动Web应用程序(适用于iPhone和Android),因此当用户离线时我的应用程序仍然可以使用。

这工作正常,但是我想将本地数据保存在服务器上。因此,我需要将本地数据库与服务器上的数据库同步。同步只能是一种方式,但是在将来,我想以两种方式(服务器<->本地数据库)进行同步。

这种要求看起来很普通(或者将来在移动Web应用程序中很常见),但是我找不到这样做的库。

我知道google在他们的移动网络应用程序(例如gmail)中正在执行此操作,并且我发现WSPL项目是google项目,但没有下载源。

如果找不到解决方案,我将创建一个库来执行此操作,因为同步的一种方式看起来并不困难,但我想知道是否还有其他解决方案。


阅读 433

收藏
2020-05-10

共1个答案

一尘不染

  • 我创建了一个名为 WebSqlSync的小型JS库,以将本地WebSqlDB与服务器(客户端<->服务器)同步。非常易于使用和集成到您的代码中:

  • 开源项目 QuickConnect 包含一个JS库,用于将本地HTML5 SQLite数据库同步到服务器数据库(MySQL或其他数据库):

要使用此库,您需要使用框架的DataAccessObject访问数据库。
它通过存储应用于数据库的所有SQL请求(当然不包括select)并将它们发送到服务器来工作。管理删除非常好,但是如果您有大量更新,那么它会很繁重,并且服务器需要使用相同的SQL语言…

  • QuickConnect的 另一个项目是本机SQLite同步(在iOS或Mac OS的Objective C中,在Android的Java中):

“persistence.js是一个异步Javascript对象关系映射器库。您可以在浏览器以及服务器上使用它(并且可以在它们之间共享数据模型)。​​”

他们有一个DB同步模块:persistence.synch.js的DOC

(可在客户端上使用HTML5 DB SQLite或Google Gears,在服务器上使用MySQL)

2020-05-10