【发布时间】:2012-01-27 21:01:44
【问题描述】:
sessionStorage 和 localStorage 存储在客户端计算机的什么位置?
能告诉我路径吗?
【问题讨论】:
-
这可能是特定于浏览器的。
-
@MadaraUchiha 浏览器+操作系统特定!
标签: local-storage web-storage sessionstorage
sessionStorage 和 localStorage 存储在客户端计算机的什么位置?
能告诉我路径吗?
【问题讨论】:
标签: local-storage web-storage sessionstorage
Firefox 将本地存储存储在 profile 文件夹中的 webappsstore.sqlite 文件中。
C:\Documents and Settings\<Windows login/user name>\Application Data\Mozilla\Firefox\Profiles\<profile folder>\webappsstore.sqlite
C:\Users\<Windows login/user name>\AppData\Roaming\Mozilla\Firefox\Profiles\<profile folder>\webappsstore.sqlite
或:
%APPDATA%\Mozilla\Firefox\Profiles\<profile folder>\webappsstore.sqlite
~/.mozilla/firefox/<profile folder>/webappsstore.sqlite
~/Library/Application Support/Firefox/Profiles/<profile folder>/webappsstore.sqlite
或:
~/Library/Mozilla/Firefox/Profiles/<profile folder>/webappsstore.sqlite
Chrome 存储在 Local Storage 目录内的单独文件中。
%LocalAppData%\Google\Chrome\User Data\Default\Local Storage\
~/.config/google-chrome/Default/Local Storage/
~/Library/Application Support/Google/Chrome/<Profile>/Local Storage/
通常:
~/Library/Application Support/Google/Chrome/Default/Local Storage/
我有点不确定,但认为这会解决问题
%userprofile%\AppData\LocalLow\Microsoft\Internet Explorer\DOMStorage
正如 OammieR 所说:
C:\Users\Administrator\AppData\Roaming\Opera\Opera\sessions\autosave.win
或者正如 Kevin Hakanson 所说:
C:\Users\Administrator\AppData\Local\Opera\Opera\pstorage\
【讨论】:
localStorage 对吧? OP提到的sessionStorage怎么样?
我找到了这个(歌剧)
C:\Users\Administrator\AppData\Roaming\Opera\Opera\sessions\autosave.win
另一个来自
【讨论】:
Opera(Windows 7 上的版本 12.14)的数据位于
C:\Users\Administrator\AppData\Local\Opera\Opera\pstorage\
psindex.dat 包含实际数据文件的索引。我访问了TodoMVC 和 quirksmode HTML5 Test - storage 来保存数据。
<?xml version="1.0" encoding="utf-8"?>
<preferences>
<section id="BA27342AD231CFCE350305FA85EB6ED1D2C57ABC">
<value id="Type" xml:space="preserve">localstorage</value>
<value id="Origin" xml:space="preserve">http://todomvc.com</value>
<value id="DataFile" xml:space="preserve">pstorage\00\07\00000000</value>
</section>
<section id="DAA00EFF4F10589343DE5A9AD5C47BD8F28FFFD4">
<value id="Type" xml:space="preserve">localstorage</value>
<value id="Origin" xml:space="preserve">http://www.quirksmode.org</value>
<value id="DataFile" xml:space="preserve">pstorage\00\0F\00000000</value>
</section>
</preferences>
quirksmode 测试页面让您可以交互地使用 localstorage API,因此我有效地执行了以下代码:
localStorage.setItem('Name','Value');
对于 Firefox,请参阅 Where does firefox store javascript/HTML localStorage?,对于 Chrome,请参阅 How is HTML5 WebStorage data physically stored?。
Opera 似乎对 pstorage\00\0F\00000000 文件中的 JavaScript unicode 字符串进行 base64 编码。
<ws>
<e><k>TgBhAG0AZQA=</k>
<v>VgBhAGwAdQBlAA==</v></e>
</ws>
下面是上面的 Base64 值,也编码为十六进制和字符串(其中\0 代表String.fromCharCode(0))。
Base64: TgBhAG0AZQA=
Hex: 4E0061006D006500
String: N\0a\0m\0e
Base64: VgBhAGwAdQBlAA==
Hex: 560061006C0075006500
String: V\0a\0l\0u\0e\0
【讨论】:
LcalStorage 和 Session 存储是根据浏览器特定的路径存储的(就像我们对 Cookie 的存储一样)......而且它也仅限于应用程序的沙盒环境。 因此,只有设置它们的域才能读取或访问它。
还要记住,只有用户才能控制这些存储的到期时间。
【讨论】: