2017-05-25 110 views
0

我想在Spring Rest中使用兩個請求主體進行映射。在Spring Restful Service中使用兩個RequestBody

我已經閱讀了一些問題,並建議使用兩種不同的方法,其中一種應用程序/ json和其他應用程序/ x-www-form-urlencoded。

我想知道這是唯一的方法還是有任何替代方案,以便我可以使用application/json和urlencoded作爲我的RequestBody。

回答

0

我不知道爲什麼你會需要兩個 - @RequestBody - 一個用於application/json &其他的application/x-www-form-urlencoded而概念HTTP請求只有一個身體,以便兩個機構沒有道理給我。

你在找什麼是處理兩個不同內容的同一個方法 - 類型不是兩個主體。身體生成/轉換過程會根據內容類型而有所不同,但由於客戶端將發送相同的數據,因此只剩下一個身體。

兩個不同的內容類型已經被支持所強調here

隨着consumes={MediaType.APPLICATION_JSON_VALUE,MediaType.APPLICATION_FORM_URLENCODED_VALUE},你可以同時發送內容 - 在您的要求不斷變化的內容類型頭部,其中一個@RequestBody類型。

對於唯一的@RequestMapping只能有一種方法,否則它將變成模糊映射。

多個映射可以映射到單個方法,反之亦然是不允許的。

相關問題