記一次Content type 'application/json;charset=UTF-8' not supported解決方案

在自己搭建的spring mvc中會拋出如下的異常:

 

發現的controller接口是這樣配置的:

 

然後我的postman的請求是這樣的:

 

當我怎麼修改請求的媒體頭類型的時候,這個問題依然存在,雖然程序庫順利的執行到我的代碼上,但是卻獲取不到我從postman提交過來的參數,於是就根據控制檯拋出的代碼路徑跟蹤代碼,通過debug得出如下圖:

 

發現StringHttpMessageConverter這個類根本不能處理我postman的請求方式,而且這個消息轉換接口在我的spring配置中只做瞭如下配置

 

所以我在這個類的同一個jar包中找到了一個可以用來支持json解析的類,

 

就是這個類,具體的一些說明,感興趣的讀者可以打開spring源碼查看,需要把這個類註冊到spring容器中,如下圖:

 

當然了,這個消息轉換接口的實現類能夠順利執行,還需要jackson來支持,具體的maven座標如下:

<dependency>

  <groupId>com.fasterxml.jackson.core</groupId>

  <artifactId>jackson-core</artifactId>

  <version>2.8.3</version>

</dependency>

 

<dependency>

  <groupId>com.fasterxml.jackson.core</groupId>

  <artifactId>jackson-annotations</artifactId>

  <version>2.8.3</version>

</dependency>

 

<dependency>

  <groupId>com.fasterxml.jackson.core</groupId>

  <artifactId>jackson-databind</artifactId>

  <version>2.8.3</version>

</dependency>

 

到此問題就已經解決了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章