关于 HTML5 LocalStorage 的一个经常提到的好处(例如,这里,这里)是对离线应用程序的支持。但是,同源策略让我认为 foo.com 上的应用程序不会看到与用户下载应用程序的 HTML 文件并将浏览器指向本地驱动器上的这些文件时相同的 LocalStorage。(同源策略也限制从 file:// URLs 加载的应用程序)。
我的问题:
- 我的网络应用程序必须读/写 LocalStorage并且可以离线使用,仍然读/写相同的 LocalStorage。支持应用清单的正确方法是什么?即,如果我使用应用程序清单,当用户在离线时尝试访问 foo.com 时,我认为他/她将获得缓存版本,但域仍将视为用户在线。那正确吗?
- 我假设如果我使用Atom shell之类的包装器创建本地应用程序,这将不起作用。即,同源策略将意味着用户将无法访问我的应用程序的包装版本中的相同 LocalStorage,就像他们从浏览器中访问的那样。那正确吗?