多部分文件(未给出条件)。错误400(错误请求)

时间:2019-02-05 07:47:56

标签: spring postman spring-restcontroller advanced-rest-client

我的rest api是。

@PutMapping(consumes = MediaType.MULTIPART_FORM_DATA_VALUEpath="/{referenceNumber}")
public void updateCard(@RequestHeader(value = tenantId) String theTenantId,
@PathVariable String referenceNumber,@RequestParam(value = "card")MultipartFile multipartFile,HttpServletRequest request)

我需要检查情况,例如不浏览文件。

我的输入格式是

标题

tenantId:***

正文:选择“ formdata”(邮递员),“ multipart-formdata”(AdvancedRestClient)

卡:不浏览文件

然后我在邮递员中遇到以下错误。

 {
"timestamp": 1549351840816,
"status": 400,
"error": "Bad Request",
"exception": "org.springframework.web.multipart.support.MissingServletRequestPartException",
"message": "Required request part 'card' is not present",
"path": "/app-1.5.0/1.5/references/34a236d7-9305-402f-959d-8c83d5ededbb"
  }

如果我在AdvancedRest客户端中尝试使用相同的输入

我遇到了另一个错误。

  {
"timestamp": 1549352119229,
"status": 415,
"error": "Unsupported Media Type",
"exception": "org.springframework.web.HttpMediaTypeNotSupportedException",
"message": "Content type 'null' not supported",
"path": "/app-1.5.0/1.5/references/34a236d7-9305-402f-959d-8c83d5ededbb" 

  } 

是否有任何不同输出的原因,我可以不检查api吗? 浏览文件。

1 个答案:

答案 0 :(得分:0)

@PutMapping(consumes = MediaType.MULTIPART_FORM_DATA_VALUEpath="/{referenceNumber}")
public void updateCard(@RequestHeader(value = tenantId) String theTenantId,
@PathVariable String referenceNumber,@RequestPart(required = false,value = "card")MultipartFile multipartFile,HttpServletRequest request){

}

用户@RequestPart而不是@RequestParam