【】POST、GET、RequestParam、ReqestBody、FormData、request payLoad簡單認知


背景:

  使用vue+axios方式代替ajax后向后台發送數據出現問題了,controller獲取不到數據。然后查、找、查、找中似乎找到一些門道。以下列出總結性的東西來記錄自己的思考成果,僅供參考,不保證正確性,歡迎指正。


① get方式的請求是沒有請求體的。但是get有query string parameter 這就是url?之后的一串東西。post請求發現了兩種請求體。一種是FromData形式的請求體,一種是request payload形式的。這個可以F12查看network詳細。

② post請求體是通過請求頭中的Content-Type來區分的:formData形式的Content-Type為application/x-www-form-urlencoded ;而request payload形式的請求體Content-Type為application/json或multipart/form-data 

③ 使用@RequestBody注解接收request payload形式的請求體參數;使用@RequestParam注解接收formData形式的請求體參數。

④ 使用axios發送post請求時,使用序列化工具Qs.stringify()對data進行序列化。axios可以自動轉換請求體形式。

⑤ 查詢的時候,我是使用POST方式的request payload形式發送請求,后台使用@RequestBody注解進行接收。映射成Page對象或者直接map對象。

⑥ 單個刪除的時候,使用DELETE方式。例如 user/del/{id}。然后后台用@PathVariable注解進行接收。

 ⑦ 批量刪除的時候,使用DELETE方式。例如user/dels/{ids}。這里的ids是用逗號分隔成的字符串。后台用@PathVariable注解接收映射成List<String> ids形式的數據。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM