You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

RestAssured如何为指定multipart/form-data部分设置application/json内容类型

解决方法

RestAssured的multiPart方法提供了重载支持,可以单独为指定的multipart部分设置Content-Type,同时不需要手动设置multipart/form-data的请求头和boundary,RestAssured会自动处理请求头和边界值,避免手动设置导致的格式错误。

修正后的代码如下:

Response resp =  RestAssured.given().baseUri(UPLOAD)
               // 不需要手动设置Content-Type头,RestAssured会自动生成正确的multipart头和boundary
               .multiPart("files",new File(System.getProperty("user.dir") +picPath))
               // 第三个参数直接指定该部分的Content-Type为application/json
               .multiPart("JSON_DATA", JSON_DATA, "application/json")
               .post().then().extract().response();

说明:

  • 你之前手动指定Content-Type: multipart/form-data; boundary=--abcd的写法可以删除,RestAssured会自动生成符合规范的请求头和边界值,避免出现边界不匹配的异常
  • multiPart(String controlName, Object content, String mimeType)是RestAssured提供的重载方法,第三个参数就是对应multipart分片的MIME类型,设置后该分片的Content-Type就会变成你指定的application/json

内容的提问来源于stack exchange,提问作者DemonSlayer

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.07 17:27:00