RequestBody的使用和原理

2021-10-05 07:02:02 字數 965 閱讀 6815

@requestbody主要用來接收前端傳遞給後端的json字串中的資料的(請求體中的資料的);get方式無請求體,所以使用@requestbody接收資料時,前端不能使用get方式提交資料,而是用post方式進行提交。在後端的同乙個接收方法裡,@requestbody與@requestparam()可以同時使用,@requestbody最多只能有乙個,而@requestparam()可以有多個。

注:乙個請求,只有乙個requestbody;乙個請求,可以有多個requestparam。

當同時使用@requestparam()和@requestbody時,@requestparam()指定的引數可以是普通元素、陣列、集合、物件等等(即:當,@requestbody 與@requestparam()可以同時使用時,原springmvc接收引數的機制不變,只不過requestbody 接收的是請求體裡面的資料;而requestparam接收的是key-value裡面的引數,所以它會被切面進行處理從而可以用普通元素、陣列、集合、物件等接收)。即:如果引數時放在請求體中,傳入後台的話,那麼後台要用@requestbody才能接收到;如果不是放在請求體中的話,那麼後台接收前台傳過來的引數時,要用@requestparam來接收,或則形參前什麼也不寫也能接收。

注:如果引數前寫了@requestparam(***),那麼前端必須有對應的***名字才行(不管其是否有值,當然可以通

過設定該註解的required屬性來調節是否必須傳),如果沒有***名的話,那麼請求會出錯,報400。

注:如果引數前不寫@requestparam(***)的話,那麼就前端可以有可以沒有對應的***名字才行,如果有***名的話,那麼就會自動匹配;沒有的話,請求也能正確傳送。

追注:這裡與feign消費服務時不同;feign消費服務時,如果引數前什麼也不寫,那麼會被預設是@requestbody的。

requestBody註解的使用

2 通過 requestbody可以將請求體中的json字串繫結到相應的bean上,當然,也可以將其分別繫結到對應的字串上。例如說以下情況 ajax success function data public void login requestbody string username,request...

RequestBody註解的使用

2.通過 requestbody可以將請求體中的json字串繫結到相應的bean上,當然也可以將其分別繫結到對應的字串上。如下 ajax success function data public void login requestbody string username,requestbody s...

requestBody註解的正確使用

2 通過 requestbody可以將請求體中的json字串繫結到相應的bean上,當然,也可以將其分別繫結到對應的字串上。需要注意的是,json字串中的key必須對應user中的屬性名,否則是請求不過去的。requestbody主要用來接收前端傳遞給後端的json字串中的資料的 請求體中的資料的 ...