RequestBody 報錯解決方法

(注:本文使用Jackson2做爲JSON序列化和反序列化庫)
若是http請求爲多層級或者數據量大, 比較複雜的時候, 能夠考慮採用post json的方式.
也就是設置請求方法爲POST, Header中Content-Type爲application/json, request body中是一個json字符串.java

在SpringMVC中接收的方式就是採用註解@RequestBody, 好比:json

@RequestMapping(value = "/api")
@ResponseBody
public Object api(@RequestBody SampleForm form) {
    return new Object();
}

但有時這個api會拋出相似 The request sent by the client was syntactically incorrect 這樣的異常.api

產生這個異常的緣由是請求的json中包含了SampleForm這個類沒定義的字段.app

解決方法就是給SampleForm這個類定義上加上註解 @JsonIgnoreProperties(ignoreUnknown = true), 便可忽略未定義字段的接收.post

相關文章
相關標籤/搜索