javascript - 如何使用 Greasemonkey 脚本防止 Firefox 中的页面缓存

标签 javascript firefox caching greasemonkey

我需要编写一个 Greasemonkey 脚本来阻止 Firefox 缓存某些页面。这可能吗?

我知道可以使用以下命令重新加载页面

window.location.reload(true)

--但是当页面从缓存加载时,脚本甚至不会运行,即使它运行,我怎么知道页面是从缓存加载而不是从 URL 加载?

我知道添加

<meta http-equiv="Cache-control" content="No-Cache">

到页面的 HTML 就可以解决问题,但仅在初始加载时进行解析,并且通过 GM 添加它不起作用...

那么,我该如何实现这一目标呢? GM 有可能吗?

最佳答案

您无法阻止页面被缓存,但您可以退而求其次,添加缓存破坏器。

http://www.adopsinsider.com/ad-ops-basics/what-is-a-cache-buster-and-how-does-it-work/

function() {
  // var url = window.location.href;
  var url = "http://z.invalid?cachebuster=10";

  var bits = url.split('?');
  var newUrl = bits[0];

  newUrl += "?cachebuster=" + Math.random()*10000000000000000;
  window.location.href = newUrl;
}

关于javascript - 如何使用 Greasemonkey 脚本防止 Firefox 中的页面缓存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24002544/

相关文章:

javascript - Three.js 将相机从一个矢量移动到另一个

javascript - 在 Javascript 中,如何告诉 array.filter() 在新数组中复制元素对象?

javascript - 强制 Internet Explorer 忽略缓存的文件

php - 通过 URL 缓存是一种好习惯吗?

c# - 重定向到页面和按下后退按钮后进入同一页面之间的区别?

javascript - HTML - 显示自定义文本/图像而不是源代码

javascript - 在脚本标签php中转义单引号

c# - 使用 C# 连接到 Firefox

javascript - 使用 Javascript 插入 iFrame

javascript - 如何使用 Javascript 检查是否安装了 Firefox 3 附加组件/扩展