我有一个带有如下签名的方法的@Controller
:
@PostMapping
@ResponseBody
public ResponseEntity<Result> uploadFileAndReturnJson(@RequestParam("file") MultipartFile file) {}
我希望能够构建多部分请求,而不需要实际创建任何文件。我尝试过像这样做:
private MultiPartSpecification getMultiPart() {
return new MultiPartSpecBuilder("111,222")
.mimeType(MimeTypeUtils.MULTIPART_FORM_DATA.toString())
.controlName("file")
.fileName("file")
.build();
}
Response response = RestAssured.given(this.spec)
.auth().basic("admin", "admin")
.multiPart(getMultiPart())
.when().post(URL);
很不幸,我收到了如下的回复:
所需的请求部分“file”不存在。
我尝试查看RestAssured单元测试,看起来我正在正确地进行。如果我尝试传递byte[]或InputStream而不是String,则会抛出异常:
无法使用不可重复的请求实体重试请求。
谢谢您的帮助。