gpt4 book ai didi

java - cURL命令上传文件不上传文件

转载 作者:行者123 更新时间:2023-12-02 09:43:07 28 4
gpt4 key购买 nike

所以我有一个 Java API,我使用 cURL 命令将 GET/POST 请求发送到我的 API。我在 Java API 中使用 Springboot。我的 cURL 命令如下所示:

curl -X POST \
https://localhost:8443/abc/code/v \
-H 'Content-Type: multipart/form-data' \
-F file=@/path/to/file.txt

接收此请求的 Java Springboot 方法如下所示:

@RequestMapping(method = RequestMethod.POST, value = "/{code}/{v}")
public ResponseEntity<Object> uploadTemplate( //
@ApiParam(value = "code desc") //
@PathVariable final String code, //
@ApiParam(value = "v desc") //
@PathVariable final String v, //
@RequestParam("file") MultipartFile file
) throws IOException {
//log.info("received [url: /tabc/" + code + "/" + v + ", method: POST");
System.out.println("file: "+ file.getName());
}

打印出“file: file”

看起来file.txt根本没有上传到服务器!我究竟做错了什么?我在 Google 上查过,但看起来我几乎做了所有事情。

最佳答案

MultipartFile.getName返回多部分形式的参数名称。

要获取MultipartFile的字节,请使用 file.getBytes()

如果您的 MultipartFile 是一个文本文件,您可以使用此实用程序方法来检索该文本文件中的行列表:

    public List<String> read(MultipartFile file) throws IOException {
InputStreamReader in = new InputStreamReader(file.getInputStream());
try (BufferedReader reader = new BufferedReader(in)) {
return reader.lines().collect(Collectors.toList());
}
}

Complete code on GitHub

关于java - cURL命令上传文件不上传文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56176734/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com