Java 如何通过重启配置和发送多部分请求

Java 如何通过重启配置和发送多部分请求,java,rest,multipartform-data,multipart,rest-assured,Java,Rest,Multipartform Data,Multipart,Rest Assured,我正在尝试配置并发送一个多部分请求,如下所示: ------boundary Content-Disposition: form-data; name="before"; filename="blob" Content-Type: application/vnd...+json;type=some_type {some JSON} ------boundary Content-Disposition: form-data; name="after"; filename="blob" Conte

我正在尝试配置并发送一个多部分请求,如下所示:

------boundary
Content-Disposition: form-data; name="before"; filename="blob"
Content-Type: application/vnd...+json;type=some_type

{some JSON}
------boundary
Content-Disposition: form-data; name="after"; filename="blob"
Content-Type: application/vnd...+json;type=some_type

{another JSON}
------boundary--
因此,我尝试配置一个请求,如下面的代码所示

RestAssuredConfig=RestAssured.config().multiPartConfig(
新的MultiPartConfig().defaultCharset(StandardCharsets.UTF_8)。
defaultBoundary(“--boundary-->”);
MultiPartSpecification m1新的MultiPartSpecBuilder(
新的ObjectMapper().writeValueAsString(一些\u JSON\u转换为\u HashMap))。
文件名(“blob”).controlName(“之前”)。
mimeType(ContentType.TEXT.getAcceptHeader())。
标题(“ContentType”,“application/vnd…+json;type=some_type”).build();
MultiPartSpecification m2=新的MultiPartSpecBuilder(
新的ObjectMapper().writeValueAsString(另一个\u JSON\u转换为\u HashMap))。
fileName(“blob”).controlName(“之后”)。
mimeType(ContentType.TEXT.getAcceptHeader())。
标题(“ContentType”,“application/vnd…+json;type=some_type”).build();
RequestSpecification request=restasured.given().multiPart(m1).multiPart(m2)。
配置(config)。
.header(“内容类型”、“多部分/表单数据;边界=“+config.getMultiPartConfig().defaultBoundary());
请求发布(“某些url”);

但当我尝试执行它时,服务器说资源无效,但我相信JSON是正确的,所以我想我的多部分配置是不正确的。我应该如何配置请求?

您可以尝试类似于以下代码的操作

given().auth().preemptive()
                .basic("Jirausername", "Jirapassword")
                .header("X-Atlassian-Token", "nocheck")
                .multiPart(new File("/home/users/cat.log"))
                .when().post("http://localhost:8181/rest/api/2/issue/STS-223/attachments");