java restTemplate 上传文件
时间: 2024-01-15 15:02:58 浏览: 30
可以使用Java的RestTemplate来上传文件,可以参考以下代码:
```java
RestTemplate restTemplate = new RestTemplate();
String url = "http://example.com/upload";
FileSystemResource resource = new FileSystemResource(new File("path/to/file"));
MultiValueMap<String, Object> request = new LinkedMultiValueMap<>();
request.add("file", resource);
HttpHeaders headers = new HttpHeaders();
headers.setContentType(MediaType.MULTIPART_FORM_DATA);
HttpEntity<MultiValueMap<String, Object>> entity = new HttpEntity<>(request, headers);
ResponseEntity<String> response = restTemplate.exchange(url, HttpMethod.POST, entity, String.class);
```
其中,需要将文件转换为 `FileSystemResource` 对象,并将其添加到 `MultiValueMap` 中作为 `file` 参数。同时,需要设置请求头的 `Content-Type` 为 `multipart/form-data`。最后,使用 `RestTemplate` 的 `exchange` 方法发送 POST 请求,并将响应结果解析为字符串。