长话短说:我正在创建应该是100%REST的API。 我试图改写下列情况下默认响应: 我有我的@RestController的方法有@RequestBody作为一个属性Java/Spring>当请求中没有主体时,处理带有@RequestBody的控制器方法的错误请求响应
@RequestMapping(value = {"register"}, method = RequestMethod.POST, produces = "application/hal+json")
public Resource<User> registerClient(@RequestBody User user, HttpServletRequest request)
,如果我发送的方法工作得很好适当的要求。但是当我不这样做的时候有一个问题。当请求有空的时候,我得到一个状态为400的通用Tomcat错误页面,我需要它只发送一个字符串或一个JSON对象。
到目前为止,我尝试在我的RestControllerAdvice中为包org.springframework.web.binding中的所有Spring异常添加异常处理程序,但它也不起作用。
我已经意识到,对于一些与安全相关的错误,必须在配置中创建处理程序,但我不知道是否属于这种情况。
有没有人遇到过类似的问题?有什么我失踪?
“但是当我不这样做的时候有一个问题。” 在哪些情况下你不会返回用户资源? – ruslanys
@ruslanys我的意思是,当我发送POST请求没有身体或空身体,每当我发布身体至少** {} **它的处理如设计 –
@ruslanys不幸的是,它并没有帮助,内容类型标题在那里,但仍然 - 请求中没有正文带来提及的问题 –