長話短說:我正在創建應該是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不幸的是,它並沒有幫助,內容類型標題在那裏,但仍然 - 請求中沒有正文帶來提及的問題 –