阻止浏览器缓存文本文件

Tyl*_*vis 4 html javascript html5 caching text-files

在圣诞节的十二天里,我正在运行这个简单的家庭网站.作为其中的一部分,我每天都会编辑一个文本文件,每天都会给出不同的答案/内容.好吧,我有一个问题,我必须告诉大家删除缓存以获取新信息.我以前从未见过这个.我刚刚添加了这两个陈述.

<meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate" />
<meta http-equiv="Pragma" content="no-cache" />
<meta http-equiv="Expires" content="0" />
Run Code Online (Sandbox Code Playgroud)

和

response.setHeader("Cache-Control", "no-cache, no-store, must-revalidate"); // HTTP 1.1.
response.setHeader("Pragma", "no-cache"); // HTTP 1.0.
response.setDateHeader("Expires", 0);
Run Code Online (Sandbox Code Playgroud)

发现如何控制网页缓存,在所有浏览器?

我测试过一切仍然很好但我不想通过改变实际内容来测试它直到明天.我的问题是,有没有办法确保浏览器不使用此javascript代码缓存我正在使用的文本文件

function readInFile(file)
{
    var rawFile = new XMLHttpRequest();

    rawFile.open("GET", file, true);
    rawFile.onreadystatechange = function()
    {
        if (rawFile.readyState === 4)
        {
            if (rawFile.status === 200 || rawFile.status == 0)
            {
                parseFile(rawFile.responseText, document.getElementById("answerText").value)
            }
        } 
    };
    rawFile.send(null);
}
Run Code Online (Sandbox Code Playgroud)

我不希望浏览器停止缓存html/js但继续缓存文本文件.我现在拥有的东西会阻止浏览器这样做吗?我之前从来没有遇到这样的问题>这次我也使用了HTML5 Boilerplate只是为了尝试一下,如果这有任何区别的话.我最终删除了很多.

Jos*_*eph 8

缓存无效

将随机参数添加到URL的末尾,就像当前时间戳一样.看起来像:

http://yourdomain.com/path/to/file.txt?t=1873261823
Run Code Online (Sandbox Code Playgroud)

您可以使用new Date().getTime()或更新近Date.now()或滚动您自己的随机数生成器作为参数的值.