我想创建一个自定义边界来使用 Spring Rest 模板发送一些 json 数据和一些文件。我无法添加该自定义边界。我无法覆盖获取一些随机字符串作为边界值的默认行为。下面是我的代码片段。有人可以建议如何获得自定义边界吗?
HttpHeaders headers = new HttpHeaders();
headers.setContentType(MediaType.MULTIPART_MIXED);
headers.set("boundary", "MyCustomboundary");
headers.set("accepts", "multipart/mixed");
MultiValueMap<String, Object> multipartRequest = new LinkedMultiValueMap<>();
Run Code Online (Sandbox Code Playgroud)
“为 JSON 部分创建 HttpEntity”
HttpHeaders jsonHeader = new HttpHeaders();
jsonHeader.setContentType(MediaType.APPLICATION_JSON);
jsonHeader.set( "Content-Disposition","form-data");
jsonHeader.set("boundary", "MyCustomboundary");
jsonHeader.set( "name","Metadata");
ContentDisposition contentDisposition = ContentDisposition
.builder("form-data")
.name("file")
.filename("FileName"))
.build();
JSONObject json = getJSONObject();
HttpEntity<String> jsonHttpEntity = new HttpEntity<>(json.toString(), jsonHeader);
Run Code Online (Sandbox Code Playgroud)
'为二进制部分创建 HttpEntity'
HttpHeaders pictureHeader = new HttpHeaders();
pictureHeader.set( "Content-Disposition","form-data");
pictureHeader.set( "name","Content");
pictureHeader.set("filename","FileNameTest");
pictureHeader.set("Content-Type", "application/octet-stream");
pictureHeader.set("boundary", "MyCustomboundary");
HttpEntity<ByteArrayResource> picturePart = new HttpEntity<>(new ByteArrayResource(multipartFile.getBytes()), pictureHeader);
Run Code Online (Sandbox Code Playgroud)
'将两个部分放在一个请求中' …
spring multipartform-data multipart resttemplate spring-boot