我正在创建一个servlet,该文件可以下载到客户端的文件。我实现了这一点,但无法将可恢复的下载下载到客户端。
这是我的代码
private void startDownloadProcess(File file) {
this.response.addHeader("Accept-Ranges", "bytes");
this.response.setContentType("APPLICATION/OCTET-STREAM");
this.response.setContentLength((int) file.length());
this.response.setHeader("Content-disposition", String.format("attachment; filename=%s", file.getName()));
try (ServletOutputStream outputStream = this.response.getOutputStream()) {
try (FileInputStream inputStream = new FileInputStream(file)) {
byte[] buffer = new byte[8072];
int len;
while ((len = inputStream.read(buffer)) > 0) {
outputStream.write(buffer, 0, len);
}
}
} catch (Exception e) {
e.printStackTrace();
}
}
此代码将使下载可用,但是客户端无法暂停和继续下载。