废话不多说,上代码.
controller层:
//点击下载pdf
@RequestMapping(value = "/downloadPdfSDS",method = RequestMethod.GET)
@ResponseBody
public Object download(@RequestParam String urls) throws IOException {
System.out.println(urls);
Map<String, Object> map = productPdfService.DownloadSDS(urls);
Object path = map.get("path");
Object catalogNo = map.get("catalogNo");
String downloadUrl = String.valueOf(path);
URL url = new URL (downloadUrl);//超链接路径 例如 https://file.leyan.com/proPdf/1199258/76410-58-7-S-2-Amino-3-4-boronopheny-COA-Le070578729-Leyan.pdf
URLConnection uc = url.openConnection();
final HttpHeaders headers = new HttpHeaders();//设置头信息
headers.add("Content-Type", "application/pdf");
headers.add("Content-Disposition", "attachment; filename="+catalogNo+"-SDS"+".pdf");
return new ResponseEntity<>(IOUtils.toByteArray(uc.getInputStream()), headers, HttpStatus.OK);
}
前端:
<a id="download" href="#">下载</a>
js:
<script th:inline="javascript" type="text/javascript">
$(function () {
var url=document.URL
var sp1 = url.split("/");
var sp2 = sp1[sp1.length-1].split(".");
var sp3 = sp2[0];
$("#download").attr("href","/downloadPdfSDS?urls="+sp3);
})
</script>