我正在使用Spring创建一个简单的API。并且我在上传和映射文件时遇到此错误。
服务器拒绝了此请求,因为请求实体的格式不受请求资源的请求方法支持。
这是我的控制器->
@RequestMapping(value = "/Hi", method = RequestMethod.POST, produces = { "application/json" })
@ResponseBody
public BasicResponse UploadData(@RequestBody CropImageData cropImageData, HttpServletRequest request) {
BasicResponse basicResponse = new BasicResponse();
System.out.println(cropImageData.getCropId());
return basicResponse;
}
我的cropImageData模型类->
public class CropImageData {
@JsonProperty("cropImages")
private MultipartFile[] cropImages;
@JsonProperty("cropId")
private String cropId;
public MultipartFile[] getCropImages() {
return cropImages;
}
public void setCropImages(MultipartFile[] cropImages) {
this.cropImages = cropImages;
}
public String getCropId() {
return cropId;
}
public void setCropId(String cropId) {
this.cropId = cropId;
}
}
这就是我通过POSTMAN发送请求的方式。
答案 0 :(得分:0)
使用Postman,您正在发送HTTP发布表单数据,但是未将端点配置为接收这种格式(缺少consumes = { "multipart/form-data" }
注释)。
而不是模型类,您应该将方法的签名更改为类似的内容:
public BasicResponse UploadData(@RequestPart("cropId") String cropId, @RequestPart("cropImages") MultipartFile file)