【问题标题】:Offline Mobile Web Application Storage离线移动 Web 应用程序存储
【发布时间】:2011-10-13 19:21:34
【问题描述】:

我正在考虑编写一个支持离线的移动网络应用程序,并且更喜欢使用 HTML5 离线功能而不是 phonegap 之类的功能。

应用程序的一个要求是它存储 2 个不同类型对象的集合(我们称它们为书籍和作者),当在线时,它将从服务器下载。如果它不需要脱机,那么我将使用某种形式的 SQL 表或(最好)基于文档的数据库来存储这些项目,但是经过一些基本调查后,我没有发现任何感觉“正确”的东西" 离线工作。

我的问题是:存储这些项目的最佳策略是什么?到目前为止我所考虑的:

HTML5 localStorage - 似乎有相对广泛的支持,但仅限于键值对,这意味着数据结构有点不愉快 - 可能有一个 total-authors 键,然后是一系列 @987654322 @ 密钥-文档对。这对我来说是错误的 - 就像我试图解决存储的意图一样。

CouchDb - 我过去曾与 CouchDb 合作过很多次,因此很想使用它或同等产品,但“合适的”CouchDb 需要一个本机应用程序(我没有经验),而我看到的 2 个浏览器内等效项似乎并不能解决问题:Lawnchair 似乎没有为 localStorage 选项和 BrowserCouch 最近似乎没有太多活动(这总是让我很警惕)。

WebDb - 看起来会很完美...除了它似乎已正式停产并且看起来没有得到广泛支持

Gears - 停产

IndexedDB - 目前浏览器支持有限(至少根据 caniuse)

我确信肯定有某种东西可以满足我的需求,而我只是设法以某种方式忽略了它。任何人都可以建议应该这样做的方式(而不是可以完成的方式)吗?

【问题讨论】:

    标签: javascript html mobile local-storage offline


    【解决方案1】:

    据我所知,没有浏览器原生的简单解决方案;您必须要么使用 localStorage,要么同时为 WebDB 和 IndexedDB 开发。

    但是非本地的你可以使用像lawnchair 这样的抽象层(默认使用localStorage,插件可用于indexeddb、webdb,...)或者你自己的SO-user Gatapia wrote for picnet(使用indexeddb & webdb & gears) can find on github.

    【讨论】:

    • 到目前为止,Lawnchair 是我最喜欢的选择,我还没有看到第二个建议,所以会调查一下 - 谢谢。我现在将问题悬而未决,希望有人知道灵丹妙药:)
    猜你喜欢
    • 2011-10-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-05-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多