Spring RestTemplate——文件上傳

一.上傳單個文件

//通過指定header和body來創建HttpEntity
HttpHeaders headers = new HttpHeaders();
headers.setContentType(MediaType.MULTIPART_FORM_DATA);


MultiValueMap<String, Object> body = new LinkedMultiValueMap<>();
// FileSystemResource有多個構造返方法
body.add("file", new FileSystemResource(filePath));

HttpEntity<MultiValueMap<String, Object>> requestEntity = new HttpEntity<>(body, headers);


//調用restTemplate.postForEntity( )完成連接建立併發送文件到服務器
String serverUrl = "http://localhost:8082/springrest/fileserver/singlefileupload/";

RestTemplate restTemplate = new RestTemplate();
ResponseEntity<String> response = restTemplate.postForEntity(serverUrl, requestEntity, String.class);

二、上傳多個文件

MultiValueMap<String, Object> body = new LinkedMultiValueMap<>();
body.add("files", new FileSystemResource(filePath1));
body.add("files", new FileSystemResource(filePath2));
body.add("files", new FileSystemResource(filePath3));
     
HttpEntity<MultiValueMap<String, Object>> requestEntity
  = new HttpEntity<>(body, headers);
 
String serverUrl = "http://localhost:8082/springrest/fileserver/multiplefileupload/";
 
RestTemplate restTemplate = new RestTemplate();
ResponseEntity<String> response = restTemplate.postForEntity(serverUrl, requestEntity, String.class);

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章