从磁盘重新加载localStorage

时间:2017-10-25 10:39:38

标签: javascript html5 sqlite firefox local-storage

我问这与Firefox有关,但也欢迎其他浏览器的解决方案!

如果我想重新加载页面,请按 F5

如果我想删除缓存并从服务器重新加载所有页面资源,请按 Ctrl + F5

这两种方法都不会导致浏览器从磁盘(~/.mozilla/firefox/foobar.profile/webappsstore.sqlite)重新加载localStorage内容。

我对此功能的测试用例如下:

  1. 我打开一个网页(http://localhost:8080),或者已打开网页。
  2. 我打开控制台并运行:

    window.localStorage.setItem("foo", "bar");
    
  3. 一些工作运行(可能由cron触发,也许是手动)。此作业将打开localstorage DB文件(~/.mozilla/firefox/foobar.profile/webappsstore.sqlite),并对localhost范围(UPDATE webappsstore2 SET value='baz' WHERE key='foo' AND scope='tsohlacol.:http:5000')中的键提交一些更改。
  4. 我重新加载页面并运行:

    window.localStorage.getItem("foo");
    
    • 希望看到"baz"返回。
    • 实际上看到"bar"已退回。
  5. 我关闭Firefox,重新打开它并加载http://localhost:5000

  6. 我打开控制台并运行:

    window.localStorage.getItem("foo");
    
    • 我看到"baz"已退回。
  7. 我的问题:为什么硬重装不会导致localStorage重新加载? 还有另一种方法吗?这是一个错误吗?

0 个答案:

没有答案