Spring Boot通过PUT上传文件

时间:2018-12-08 12:43:33

标签: spring-boot curl resttemplate

我有一个卷曲查询:

raise OperationFailure(msg % errmsg, code, response)
pymongo.errors.OperationFailure: bad auth Authentication failed.

我有一个Spring Boot应用程序,我的目标是编写一个查询,以反映我上面发布的curl。我该如何使用RestTemplate或WebClient?

1 个答案:

答案 0 :(得分:0)

您需要使用标题和正文创建HttpEntity。将content-type标头值设置为MediaType.MULTIPART_FORM_DATA

HttpHeaders headers = new HttpHeaders();
headers.setContentType(MediaType.MULTIPART_FORM_DATA);
MultiValueMap<String, Object> body = new LinkedMultiValueMap<>();
body.add("file", new FileSystemResource("test.txt"));
HttpEntity<MultiValueMap<String, Object>> requestEntity = new HttpEntity<>(body, headers);
String serverUrl = "http://remote_api_service/api/files";
RestTemplate restTemplate = new RestTemplate();
restTemplate.put(serverUrl, requestEntity);