如何使用Greasemonkey脚本阻止页面在Firefox中缓存

时间:2014-06-02 20:16:20

标签: javascript firefox caching greasemonkey

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

我知道可以使用

重新加载页面
window.location.reload(true)

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

我知道添加

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

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

那么,我该如何实现呢?是否可以与GM一起使用?

1 个答案:

答案 0 :(得分:1)

您无法阻止页面被缓存,但您可以做下一件最好的事情并添加缓存破坏程序。

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;
}