起初,缓存并不适用于所有浏览器。然后我通过将 .pdf 扩展名添加到 url 使其在除 IE (IE8) 之外的所有浏览器中工作。之后不再调用 Servlet。
我通过加载以下网址的 EMBED 标记在网页上显示 pdf 文件内联:
http://localhost:7001/app/viewFile.pdf
它由 java servlet 生成,具有以下标头:
response.addHeader("Content-Disposition", "inline;");
response.setHeader("Cache-control", "cache,max-age=600");
response.setContentType(mimeType);
response.setContentLength(contentLength);
对于在所有浏览器中显示的 pdf,我使用 Adobe Reader 9.2.0。
如何让它在 IE 中也能工作?我注意到 IE 在request中添加了 'Cache-Control: no-cache' 标头,而 Safari 则没有。