/**
* 文件下载
* @param id
* @return
* @throws IOException
*/
@RequestMapping(value = "/download_file/{type}", method = RequestMethod.GET)
public void downloadFile(@PathParam("type") Long type,HttpServletResponse res)
throws IOException {
String path = ReadJson.class.getClassLoader().getResource("upgrade.json").getPath();
res.setHeader("content-type", "application/octet-stream");
res.setContentType("application/octet-stream");
res.setHeader("Content-Disposition", "attachment;filename=" + "upgrade.json");
InputStream in = null;
OutputStream os = null;
try {
os = res.getOutputStream();
in = new FileInputStream(new File(path));
byte[] buffer = new byte[1024];
int len;
while ((len = in.read(buffer)) > 0) {
os.write(buffer, 0, len);
}
/**调用os.flush();就表示下载相应构建完成了,相当于return响应数据*/
os.flush();
} catch (IOException e) {
e.printStackTrace();
} finally {
if (in != null) {
try {
in.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
<el-button size="small" type="primary" @click="downloadFile()">
下载
</el-button>
downloadFile() {
window.location.href = process.env.VUE_APP_DEV_API + '/upgrad_tcp/download_file/1'
},