1. 程式人生 > 其它 >RequestParam與RequestBody

RequestParam與RequestBody

一、問題描述

由於專案是前後端分離,因此後臺使用的是spring boot,做成微服務,只暴露介面。介面設計風格為restful的風格,在get請求下,後臺接收引數的註解為RequestBody時會報錯;在post請求下,後臺接收引數的註解為RequestParam時也會報錯。

二、問題原因

由於spring的RequestParam註解接收的引數是來自於requestHeader中,即請求頭,也就是在url中,格式為xxx?username=123&password=456,而RequestBody註解接收的引數則是來自於requestBody中,即請求體中。

三、解決方法

因此綜上所述,如果為get請求時,後臺接收引數的註解應該為RequestParam,如果為post請求時,則後臺接收引數的註解就是為RequestBody。附上兩個例子,截圖如下:

get請求

post請求

​ 另外,還有一種應用場景,介面規範為resultful風格時,舉個例子:如果要獲取某個id下此條問題答案的查詢次數的話,則後臺就需要動態獲取引數,其註解為@PathVariable,並且requestMapping中的value應為value="/{id}/queryNum",截圖如下:


原文: https://www.cnblogs.com/williamjie/p/9202099.html

更多資訊請關注公眾號:「軟體老王」,關注不迷路,軟體老王和他的IT朋友們,分享一些他們的技術見解和生活故事。

更多資訊請關注公眾號:「軟體老王」,關注不迷路,IT技術與相關乾貨分享,回覆關鍵字獲取對應乾貨,本文版權歸作者軟體老王所有,轉載需註明作者、超連結,否則保留追究法律責任的權利。