RestTemplate上传文件
时间: 2023-12-12 13:32:31 浏览: 93
RestTemplate是Spring提供的一个用于访问Rest服务的客户端,它可以用于发送HTTP请求并处理响应。RestTemplate上传文件的过程与发送普通请求类似,只需要在请求中添加文件即可。具体实现可以参考以下步骤:
1. 创建RestTemplate对象。
2. 创建MultiValueMap对象,并将文件添加到其中。
3. 创建HttpHeaders对象,并设置Content-Type为multipart/form-data。
4. 创建HttpEntity对象,并将MultiValueMap和HttpHeaders添加到其中。
5. 调用RestTemplate的postForObject方法发送请求,并获取响应结果。
范例:
```java
RestTemplate restTemplate = new RestTemplate();
MultiValueMap<String, Object> map = new LinkedMultiValueMap<>();
map.add("file", new FileSystemResource(new File("path/to/file")));
HttpHeaders headers = new HttpHeaders();
headers.setContentType(MediaType.MULTIPART_FORM_DATA);
HttpEntity<MultiValueMap<String, Object>> requestEntity = new HttpEntity<>(map, headers);
String response = restTemplate.postForObject("http://example.com/upload", requestEntity, String.class);
```
阅读全文