【问题标题】:HTML5 localStorage for offline websites离线网站的 HTML5 localStorage
【发布时间】:2012-12-15 07:24:32
【问题描述】:

我正在创建一个简单的应用程序,用户将其下载到他/她的计算机上,然后使用浏览器从硬盘驱动器上打开它。我需要它能够使用任何标准浏览器来存储数据。 (尽管数据不必在浏览器之间访问)。

如this link 所述,如果使用HTML5 的本地存储,如果站点的url 类似于file:///C:/Web/mylocaltodo.html,Internet Explorer 会抛出错误。它说它可以通过使用'localhost'来完成,但它提供的示例应用程序并没有说明如何完成。

是否可以在用户在本地主机上安装 Web 服务器的情况下为离线站点本地保存数据?它是否适用于任何现代浏览器,包括 Internet Explorer?

谢谢

【问题讨论】:

  • 在移动应用程序的意义上是指应用程序,还是您在谈论一个完整的桌面应用程序。如果它是两者中的第一个,我不明白您为什么需要创建与 IE8 的兼容性?
  • 它将是一个独立的应用程序,通常只在用户的台式电脑上运行,我不支持在手机上使用它

标签: html local-storage offline


【解决方案1】:

虽然问题仍然很老,但在创建应在多个窗口之间同步的应用程序时,我遇到了类似的问题。

所以我只想与其他开发人员分享我的经验,这样可以避免长时间搜索问题。

事实上,由于same origin policy(对于通过XMLHttpRequest进行本地文件访问),读取localStorage的访问被拒绝,因此更改不会在窗口之间同步。

简而言之:如果您使用file:/// 作为 URL,它将无法同步本地存储。使用简单的网络服务器和http://localhost/ 作为 URL,它会。

奇怪的行为,遗憾的是,javascript 控制台中没有错误消息。在离线尝试一些localStorage 实验时请记住这一点,不要疯狂地在代码中搜索问题;-)

【讨论】:

  • 谢谢。我试图使用Storage Events 在两个单独的窗口之间同步数据,但它无法处理我桌面上的一些测试文件。
猜你喜欢
  • 1970-01-01
  • 2016-11-02
  • 2023-03-21
  • 2011-02-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-01-02
相关资源
最近更新 更多