restful基本特點
無狀态 比如websocket這種連接配接,斷開連接配接的是有狀态的
面向資源,沒有動詞
http動詞 get 檢視, post 建立, put 更新, patch 部分更新,delete 删除.
超媒體即應用狀态引擎
好用:面向對象(資源),如增删改查.
不好用: 面向過程,如登陸.
restful6個限制和最佳實踐
client-server
前後端分離
無狀态
請求獨立(jwt)
3.分層系統
代碼分層
統一接口(核心)
資料統一
api自發現
5.可緩存
6.按需代碼,不重要
絕大部分後端都不會100%滿足這6個限制.
restful是一種架構風格,但它絕不是一種代碼标準,實作業務是王道.
restful成熟度模型
level0
隻要有api
通過http傳輸
level1
面向資源
level2
http動詞
level3
超媒體即自我發現引擎
api自我發現
超媒體=多媒體+超文本
好處:前端程式員不用把url寫入配置檔案,不用hard code url字元串,不用再代碼中做url的拼接.
用不用restful,要根據項目的實際情況決定,用哪個成熟的要看業務需求.
http head請求
head與get類似,但是沒有響應主題
檢查緩存
探測資源是否存在