有没有一种自动同步 HTML5 本地存储在多台电脑之间的方法?

13
我有一个简单的离线html5/javascript单文件Web应用程序,我将其存储在我的Dropbox中。它是我编写的一种时间跟踪工具,并将应用程序数据保存到本地存储中。由于这是我自己使用的,所以我喜欢离线应用程序的便利性。
但我有几台计算机,一直在尝试想出任何可以同步此应用程序数据(目前使用本地存储)的hacky方法在我的各种机器之间。
似乎chrome允许同步数据,但仅限于chrome扩展程序。我还想,或许可以让网页自动从dropbox文件夹中的文件保存/加载其数据,但似乎没有办法自动同步特定文件而不需要用户提示。
我想“显而易见”的解决方案是将页面放在服务器上并将数据存储在数据库中。但是假设我不想要需要我在服务器上维护应用程序的解决方案-是否有另一种方法,无论多么hacky,都可以拼凑同步?
我甚至花了一段时间寻找是否有供应商提供Web数据库服务-在那里我可以根据需要发布/获取JSON blob,然后以某种方式使我的离线应用程序与此服务同步,但同源策略似乎使该计划无效(而且我无法找到这样的服务)。
是否有使用chrome、google drive、dropbox或其他我不知道的工具的聪明/狡猾解决方案来解决此问题?还是我必须设置自己的服务器?

我没有尝试过,但是如果您使用--allow-file-access-from-files标志启动Chrome,则可以使用ajax从本地文件系统读取数据文件。此外,这并不是完全离线的,但是值得一试:https://www.dropbox.com/developers/chooser - bfavaretto
2个回答

6
我一直在开发一个项目,基本上它为你提供了带有版本控制的localStorage,并支持冲突解决,如果两个不同的客户端编辑了相同的资源。目前还没有服务器或客户端驱动程序(它们目前是异步内存测试用的),但有很多代码和抽象来使编写自己的驱动程序变得非常容易…我甚至考虑过自己做一个dropbox/google文档驱动程序,不过我想先完成DynamoDB/MongoDB和Lawnchair。
该代码不依赖于jQuery或任何其他库,也有一个相当完整的功能(虽然丑陋)演示。
无论如何,URL是https://github.com/forbesmyester/SyncIt

4

显然,我遇到了完全相同的问题,并且进行了深入调查。如果你能够让它起作用,最好的选择是remoteStorage。它允许使用第三方服务器进行数据存储或运行自己的实例。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接