如何完全清除localstorage
,sessionStorage
并cookies
在 javascript 中?
有什么办法可以在清除这些值后取回它们?
如何彻底清除本地存储
localStorage.clear();
如何彻底清除会话存储
sessionStorage.clear();
[...] 饼干 ?
var cookies = document.cookie;
for (var i = 0; i < cookies.split(";").length; ++i)
{
var myCookie = cookies[i];
var pos = myCookie.indexOf("=");
var name = pos > -1 ? myCookie.substr(0, pos) : myCookie;
document.cookie = name + "=;expires=Thu, 01 Jan 1970 00:00:00 GMT";
}
清除这些后有什么办法可以恢复价值吗?
不,没有。但是,如果这与安全问题有关,您不应该依赖它。
标准的Web Storage并没有说明任何关于恢复这些内容的内容。所以不会有任何标准的方法来做到这一点。您必须通过浏览器实现这些的方式,或者在删除它们之前找到一种备份它们的方法。
在通过 javascript 删除它们后,无法通过浏览器中的 javascript 检索 localStorage、sessionStorage 或 cookie 值。
如果您真正要问的是是否有其他方式(从浏览器外部)来恢复该数据,那是一个不同的问题,答案将完全取决于特定的浏览器以及它如何实现每种类型的存储数据的。
例如,Firefox 将 cookie 存储为单独的文件。当 cookie 被删除时,它的文件也被删除。这意味着无法再通过浏览器访问 cookie。但是,我们知道,有时可以从浏览器外部使用系统工具检索已删除文件的内容。
如果您想进一步研究这一点,您必须了解每个浏览器如何在每个感兴趣的平台上存储每种数据类型,然后探索该类型的存储是否有任何恢复策略。