前言
本文學習如何運用不同的注解來返回不同的響應.
1.返回靜態頁面@Controller
返回index.html頁面
@Controller 和 @RestController的區別
-
@controller
只有加上這個注解,Spring才會幫我們管理這個代碼.后續我們訪問時才能訪問到.
-
@RestController
等同于 @Controller+ @ResponseBody
聯系:
@Controller 返回視圖.
隨著前后端分離,后端不處理頁面,就返回頁面所需要的數據
@RestController 返回數據.
相當于@controller+@ResponseBody
2.返回數據@ResponseBody
- 可以修飾類
表示這個類下的所有方法返回的都是數據 .
- 也可以修飾方法
表示這個方法返回的都是數據.
3.返回html的代碼片段
和返回數據一樣.
返回的數據中包含的html標簽會直接被瀏覽器解析.
4.返回json
4.1返回對象
此時響應的數據類型conten_type是application/json , 也就是對象轉化了json數據.?
4.2返回Map
此時查看響應報文 ,正文類型也是application/json
總結:
當接口返回的是String時,content-type是text/html
當接口返回的是對象或者map時,content-type會被設置為application/json
5.設置狀態碼(http狀態碼)
狀態碼不會影響頁面的展示
查看響應頭
6.設置header
@RequestMapping注解設置Content_type
查看@RequestMapping注解的源碼
produce相當于設置正文類型
consume相當于限制正文類型
案例練習 -?用戶登陸案例
1.登陸接口
/user/login
username= ? & password=?
后端:
前端:
接口返回:校驗成功/失敗
2.獲取用戶的登陸信息
/user/getUserInfo
接口返回:當前的用戶名字
后端:
前端:
建議:寫完后端接口先訪問查看一下.