【问题标题】:How to load a local file using MultipartFile in spring boot如何在 Spring Boot 中使用 MultipartFile 加载本地文件
【发布时间】:2021-05-15 03:30:15
【问题描述】:

如何在 Spring Boot 中使用只接受 MultipartFile 的 API? 必须从本地服务器(从某个特定路径)传递文件

@FeignClient(name = "abc-file-upload",url ="https://abc.xyz.app")
public interface ABCFeignClient {

    String AUTH_TOKEN = "Authorization";
    @PostMapping(value = "/api/v1/upload",consumes = "multipart/form-data")
    UploadFileResponse uploadFile(@RequestBody MultipartFile multipartFile, @RequestHeader(AUTH_TOKEN) String api_key);
}

现在我必须调用这个客户端方法,并且必须从特定位置传递一个本地文件,例如 (/Users/pradeepkumar/Desktop/File_Download/file1.jpg)

如何获取本地文件的 MultipartFile 对象?

【问题讨论】:

标签: spring spring-boot microservices multipartform-data multipartfile


【解决方案1】:

首先,MultiPartFile 是一个接口,我们可以创建一个包含多个实现的对象,如下所示,

File file = new File("/Users/pradeepkumar/Desktop/File_Download/file1.jpg");

一旦你有了本地文件的 File 对象,

final MultipartFile multipartFile = new MockMultipartFile(filename, filename, mimeType, FileUtils.readFileToByteArray(file));

此外,您可以创建自己的此接口实现。只需覆盖所有方法并从所有被覆盖的方法返回预期数据。

【讨论】:

    猜你喜欢
    • 2019-01-30
    • 2021-12-18
    • 1970-01-01
    • 2014-12-17
    • 1970-01-01
    • 2017-11-27
    • 2022-01-10
    • 1970-01-01
    • 2019-02-03
    相关资源
    最近更新 更多