IE 8在没有缓存头的情况下默认的缓存行为是什么?如果没有从服务器端设置头部,它将如何缓存响应,或者默认情况下是否遵循no-cache?连接是安全的,即HTTPS。
我正面临这样的问题,我写了字节流作为响应,我设置的头是-
response.setContentType("application/pdf;charset=utf-8;");
response.setHeader("Content-Length",server.getContentLength() + "");
response.setHeader("Content-Disposition",“附件;filename=\"”+ fileName + "\"");
我知道这样一个事实:如果用户尝试通过HTTPS连接下载文件,任何阻止缓存的响应头都会导致Internet Explorer中的文件下载过程失败,但在我的例子中,没有显式指定缓存的头。然后IE 8也说-
无法下载。
Internet Explorer无法打开此站点。请求的网站不可用或找不到。请稍后再试。
我不明白它背后的确切原因。因此,我只能猜测IE8的默认缓存机制。然而,它在IE 9+和其他浏览器中工作得很好。
发布于 2015-11-26 09:57:48
我找到了这件事的确切原因。它是由我们自己的代码设置的,它针对特定请求的每个响应进行设置。所以,现在我知道这些头文件是由我们设置的,并且在提供导出功能的代码中,我只是覆盖了它们,以便在IE8上正常工作-
response.setHeader("Cache-Control","");// HTTP1.1
response.setHeader("Pragma","");// HTTP1.0
https://stackoverflow.com/questions/33933329
复制相似问题