用于清除 appcache/cookies/localstorage 的书签?

Bookmarklet for clearing appcache/cookies/localstorage?

我找遍了所有地方,但找不到任何东西。我很难相信我是第一个考虑尝试这样做的人,但我想知道这是否可能。

我想使用可以留在工具栏上的小书签清除 cookie、应用程序缓存、本地存储以及与网站相关的所有内容。

这可能吗?

这是可能的,实际上实现一个简单的解决方案真的很容易。

可以按照以下步骤完成:

  1. 创建书签并为其指定一个描述性名称。例如:"Clear Storage".
  2. 将 URL 更改为 javascript:(function(){ [YOUR CODE] })();
  3. [YOUR CODE] 替换为一行 JavaScript 以进行所需的清除。

例如:

  • 要清除本地存储,请使用localStorage.clear();。书签 URL 就像:

    javascript:(function(){ localStorage.clear() })();
    

    或者只是

    javascript:localStorage.clear();
    
  • 删除cookies,use any of the solutions on this question. I opted for Craig Smedley's solution因为已经是单行本了(准备做小书签)。书签 URL 就像:

    javascript:(function(){ document.cookie.split(";").forEach(function(c) { document.cookie = c.replace(/^ +/, "").replace(/=.*/, "=;expires=" + new Date().toUTCString() + ";path=/"); }) })();
    

现在,只需单击书签即可进行多项此类操作,只需将它们连接起来即可(只有一个 javascript:)。例如,清除本地存储和删除 cookie 的书签的 URL 类似于:

javascript:(function(){ localStorage.clear();var c = document.cookie.split("; "); for (i in c) { document.cookie =/^[^=]+/.exec(c[i])[0]+"=;expires=Thu, 01 Jan 1970 00:00:00 GMT"; }; })();

您只需要找到您最喜欢或更符合您需求的代码,并将其保存在书签中即可。由于它对于书签大小来说可能太大了,您可能希望将代码放在某个文件中并应用它 as described on this comment.

您可以在 this JSFiddle 上看到删除 localStorage 的书签演示。