spring 引导中响应 POST 的一些逻辑问题

Some problem Logic with response POST in spring boot

我将不得不做一些开发,我需要你的逻辑, 我会尽量说清楚

我有一个 JSON 文件,将被发送到 Web 服务进行处理。

当文件到达此 Web 服务时,我必须对其进行解析。

第一个问题: 恢复这个文件是@PostMapping吗?

既然是文件,我是这样获取的:

@PostMapping( value="/getFile",
consumes = {"multipart/form-data"})
public void postFile(@RequestParam() MultipartFile file) throws IOException   

我很好地恢复了文件,但问题是 @RequestParam 参数需要一个文件名,除了当文件被发送到 web 服务时,我没有还不知道它的名字,

第二题 :

那么如何将这个文件解析成字符串呢?

提前感谢您的宝贵帮助

第一个问题:

是的,@PostMapping 是正确的方法。关于文件名位,@RequestParam() 不期望传递文件名,它期望键值对的“键”,其中值是正在上传的文件。 例如,当通过 RestTemplate 调用发送文件时,该文件将包含在 POST 调用中,如下所示:

MultiValueMap<String, Object> body = new LinkedMultiValueMap<>();
body.add("uploadFile", getFileToUpload());

此处的键是“uploadFile”,因此您的控制器将如下所示:

@PostMapping( value="/getFile",
consumes = {"multipart/form-data"})
public void postFile(@RequestParam("uploadFile") MultipartFile file) throws IOException 

查看本教程:https://spring.io/guides/gs/uploading-files/


第二个问题:

ByteArrayInputStream stream = new ByteArrayInputStream(file.getBytes());
String myFileString = IOUtils.toString(stream, StandardCharsets.UTF_8);

这应该可以。干杯