2011-05-20 91 views
7

对于没有在Android上安装CouchDB的用户,使用它们离线访问我的CouchDB数据(使用Node.js)的最佳实践方式是什么?如何让访问者通过手机网站离线访问CouchDB数据?

下面是我的猜测:当用户在线时,阅读CouchDB数据并输出列出数据的JS对象文字。使用browsercouch将JS对象字面值存储在本地存储中。离线访问者将能够从本地存储获取数据。

+0

localStorage如上所述解决了这个问题。您需要非常聪明并尽量减少您需要存储的离线数据量。 – Raynos 2011-05-20 08:11:06

回答

3

这绝对是现在(2011年5月)的最佳解决方案。希望在不久的将来,这个问题将被编辑为“只使用移动Couchbase SDK”。

但现在,使用localStorage来保存您需要的一切。一个好主意是在上次联系数据库时记住数据库中的seq_id。当你回到在线状态时,你可以查询沙发的/db/_changes?since=$old_seq_id,CouchDB会告诉你从那以后添加或修改的所有文档。最后,除了browsercouch之外,Mikeal Rogers和其他人正在研究IndexedDBCouch,IDBCouch,这是非常新的,但其目的是在Web浏览器中重新实现CouchDB(可能在webkit视图中有一天;我不确定)。 https://github.com/mikeal/IDBCouch