一.REST起源
REST(Representational State Transfer)表象化狀態轉變(表述性狀態轉變),在2000年被提出,基於HTTP、URI、XML、JSON等標准和協議,支持輕量級、跨平台、跨語言的架構設計。是Web服務的一種新的架構風格(一種思想)。
二.REST架構的主要原則
- 對網絡上所有的資源都有一個資源標志符。
- 對資源的操作不會改變標識符。
- 同一資源有多種表現形式(xml、json)
- 所有操作都是無狀態的(Stateless)
符合上述REST原則的架構方式稱為RESTful
什么是無狀態性:
使得客戶端和服務器端不必保存對方的詳細信息,服務器只需要處理當前的請求,不需了解請求的歷史。可以更容易的釋放資源,讓服務器利用Pool(連接池)技術來提高穩定性和性能。
三.RESTful介紹
RESTful是一種常見的REST應用,是遵循REST風格的web服務,REST式的web服務是一種ROA(面向資源的架構)。
1.RESTful資源操作
| http方法 | 資源操作 | 冪等 | 安全 |
|---|---|---|---|
| GET | SELECT | 是 | 是 |
| POST | INSERT | 否 | 否 |
| PUT | UPDATE | 是 | 否 |
| DELETE | DELETE | 是 | 否 |
2.接口示例:
2.1.傳統URL請求格式:
http://127.0.0.1/user/query/1 GET 根據用戶id查詢用戶數據
http://127.0.0.1/user/save POST 新增用戶
http://127.0.0.1/user/update POST 修改用戶信息
http://127.0.0.1/user/delete GET/POST 刪除用戶信息
2.2.RESTful請求格式:
http://127.0.0.1/user/1 GET 根據用戶id查詢用戶數據
http://127.0.0.1/user POST 新增用戶
http://127.0.0.1/user PUT 修改用戶信息
http://127.0.0.1/user DELETE 刪除用戶信息
四.RESTful的使用
下面將用實際代碼演示RESTful做增刪改查的操作使用示例:
1.查詢get:

查詢測試:


2.新增post:
新增測試:
AJAX調用:


3.更新put:

Service寫法:

更新測試:

4.刪除delete:

刪除測試:

五.結語
至此,RESTful的介紹和使用已經完成,RESTful已在各互聯網公司接口定義中,成為主流的范式,RESTful減少了傳統請求的拆裝箱操作,結構清晰,在接口定義中受到前后端開發者的青睞。


