springboot+vue+elementUI项目中,写一个文件下载的API
时间: 2023-06-06 10:08:09 浏览: 106
好的,关于文件下载的API,您可以在Spring Boot中使用以下代码来实现:
```java
@GetMapping("/download")
public ResponseEntity<Resource> downloadFile(@RequestParam("fileName") String fileName) throws FileNotFoundException {
// 获取文件地址
String filePath = "/path/to/file/" + fileName;
File file = new File(filePath);
InputStreamResource resource = new InputStreamResource(new FileInputStream(file));
// 设置响应头,告诉浏览器该文件为下载文件
HttpHeaders headers = new HttpHeaders();
headers.add("Content-Disposition", "attachment; filename=" + fileName);
// 返回文件资源
return ResponseEntity.ok()
.headers(headers)
.contentLength(file.length())
.contentType(MediaType.APPLICATION_OCTET_STREAM)
.body(resource);
}
```
以上的代码返回了一个从指定路径中读取的文件资源,并将其设置为下载文件。您可以使用`@RequestParam`注解获取需要下载的文件名。
希望能对您有所帮助!
阅读全文