多个Spring @RequestMapping标头

时间:2018-08-12 18:20:53

标签: java spring-boot post request-mapping

我的问题很简单,是否可能在同一方法上使用两个不同的内容类型标头?

那样:

@RequestMapping(value = "/provider", method = RequestMethod.POST, headers = "Accept=application/json,content-type=multipart/form-data")
    @ResponseBody
    @Transactional
    public ResponseEntity<String> createProviderQuote(
            @RequestParam(value = "work", required = true) String workId,
            UriComponentsBuilder uriComponentsBuilder, final HttpServletRequest request) {
}

我需要发送一个带有图像(多部分文件)的Json对象,但是我没有成功。因此,我使用标头:

headers = "Accept=application/json,content-type=multipart/form-data"

非常感谢!

1 个答案:

答案 0 :(得分:1)

是的,您可以-为设置端点将接受和返回的内容,您需要使用consumes注释中的produces@RequestMapping属性,例如

@RequestMapping(value = "/provider", 
                method = RequestMethod.POST, 
                produces = {MediaType.APPLICATION_JSON, MediaType.MULTIPART_FORM_DATA})

当然,根据您的要求,您当然需要在前端方面适当支持