-1
我有一個jsp頁面,用於從服務器下載pdf文件。當我從瀏覽器請求jsp頁面時,jsp從數據庫讀取文件信息,從文件獲取inputstream並寫入ServletOutputStream。 僞代碼:有沒有可能在網頁中緩存pdf文件?
response.setContentType("application/pdf");
response.setHeader("Content-disposition","inline;filename=URLEncoder.encode(filename)");
response.setHeader("Cache-Control","max-age=3600");
ServletOutputStream os = response.getOutputStream();
FileInputStream in = new FileInputStream(new File(filePath));
int size = 0;
byte[] buffer = new byte[512];
while((size=in.read(buffer))!=-1){
os.write(buffer,0,size);
}
當請求完成後,下載的PDF在瀏覽器中打開。同一個文件被多次下載,所以我們想把它們緩存到本地文件系統,這樣每個請求的返回狀態代碼是304(沒有修改),但緩存控制不起作用,有沒有人可以幫忙?
您的代碼正在構建響應,因此您的代碼將有發送304的任務。 – Holger