java下載文件瀏覽器顯示0B問題

java下載文件發現在瀏覽器下載前顯示大小是0B,但是實際下載下來是有大小的,且文件也能正常使用。

查閱相關資料,發現瀏覽器實現下載前預知文件大小的方式是通過獲取下載文件的鏈接中的響應頭屬性Content-Length的方式,因此只需要在後臺下載文件的控制器響應頭對象中設置該屬性即可:

HttpServletResponse response

File file = new File(filePath);
if (!file.exists()) {
     throw new FileNotFoundException(filePath);
}

// 設置回顯文件大小
response.setHeader("Accept-Ranges", "bytes");
response.setHeader("Content-Length", String.valueOf(file.length()));

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章