2017-08-14 129 views
1

我在IE浏览器中缓存问题。我的网页有下载pdf功能。服务器提供文件内容,然后将其作为blob对象进行处理,然后输入到filesaver.js.每当我下载一个pdf时,显示的是旧文件。我怎样才能防止这一点?在IE浏览器中缓存问题PDF下载

我试图附加随机数与文件名。仍存在缓存问题。

var pdfFileName ="myfile" + "_" + i; // i=0,1,2,3 etc 
var fileName = new Blob([response], { 
       type: 'application/pdf' 
}); 
saveAs(file, pdfFileName + ".pdf"); 

其工作的另一种方法是从IE设置 - > Internet选项 - >常规选项卡 - >浏览历史记录 - 设置 - >选择选项“每次访问网页”。这帮助我消除了缓存问题。

但我想知道如何以编程方式处理缓存?

+0

介绍如何'试图随机数与文件name'追加 - 因为这听起来像一个办法做到这一点 –

+0

使服务器告诉浏览器不通过配置在下载附带正确的响应头缓存文件,例如https://stackoverflow.com/a/13640164/246342 –

+0

@Jaromanda X我已经更新了你问的代码的问题。当我点击SAVE按钮时,文件名就像myfile_0,mfile_1等一样生成 – srkm

回答

1

追加随机整数,同时节省文件将无法正常工作。 当您尝试从服务器将pdf检索为blob时,将其追加到url中。