昨天在寫一個自己的小項目,突然遇到一個問題,GET請求和RequestBody混用的錯誤,出現(xiàn)org.springframework.http.converter.HttpMessageNotReadableException
異常,在下方我把錯誤截圖附上。但是一個多小時沒有解決,于是我當(dāng)晚就放棄了,嘿嘿,當(dāng)然,不是永遠(yuǎn)放棄,到了公司于是繼續(xù)調(diào)試,繼續(xù)百度,突然發(fā)現(xiàn)一個類似的問題,借鑒網(wǎng)上的資料,于是這個給出解決方法。
錯誤代碼截圖:
image.png
控制器我也給出代碼,方便進(jìn)行對比:
因為是獲取嘛,我理所當(dāng)然的用了GET請求,但是并不是我想的那么簡單
@ApiOperation(value ="獲取XX列表",httpMethod = "GET")
@GetMapping(value = "/all")
@ApiResponses(@ApiResponse(code = 500,message = "服務(wù)器響出錯",response=Integer.class))
public ResultMsg getXXList( @ApiParam(value = "獲取菜譜條件dto",name = "menuConditionDataObject",required = true)
@RequestBody ConditionDataObject conditionDataObject){
return menuService.getXXList(conditionDataObject);
}
接下來我給出解決方法,方法也很簡單,只要把GET請求改成POST請求就行了,我也給修改后的代碼:
@ApiOperation(value ="獲取XX列表",httpMethod = "POST")
@PostMapping(value = "/all")
@ApiResponses(@ApiResponse(code = 500,message = "服務(wù)器響出錯",response=Integer.class))
public ResultMsg getXXList( @ApiParam(value = "獲取XX條件dto",name = "menuConditionDataObject",required = true)
@RequestBody ConditionDataObject conditionDataObject){
return menuService.getXXList(conditionDataObject);
}
ok,完事,以前遇到問題沒有記錄下來,從現(xiàn)在開始決定把遇到的每一個問題都記錄下來,一起爬坑。