SpringでRestTemplateを使用してファイルをアップロードする方法は何ですか?
SpringでRestTemplateを使用してファイルをアップロードする場合は、以下の手順を実行します。
- マルチバリューマップ
- 連結されたマルチ値マップ
MultiValueMap<String, Object> body = new LinkedMultiValueMap<>();
- 体 (からだ)
- ファイルシステムリソース
- 追加する
- 体 (からだ)
Resource fileResource = new FileSystemResource(new File("path/to/file"));
body.add("file", fileResource);
- 追加する
- 体 (からだ)
body.add("param1", "value1");
body.add("param2", "value2");
- HTTP ヘッダー
- コンテンツの種類
- マルチパート/フォームデータ
HttpHeaders headers = new HttpHeaders();
headers.setContentType(MediaType.MULTIPART_FORM_DATA);
- HTTPエンティティ
- 身体 (Karada)
- 見出し
HttpEntity<MultiValueMap<String, Object>> requestEntity = new HttpEntity<>(body, headers);
- レストテンプレート
- postForObjectを元にしてください。
- 要請エンティティ
RestTemplate restTemplate = new RestTemplate();
String url = "http://example.com/upload";
String response = restTemplate.postForObject(url, requestEntity, String.class);
RestTemplateを使用してファイルをアップロードする基本的な手順は以上です。必要に応じて適切な調整や拡張ができます。