REST ⇒ Representational State Transfer
是一種軟體架構的設計風格,不是一種標準或是規格,只是提供元則概念
從路由結構就能看出要對什麼資料、進行什麼操作
resource
-
Verb
- GET
- POST
- PATCH
- PUT
- DELETE
-
Crud
- Create
- Read
- Update
- Delete
例如
- 瀏覽全部資料:GET + 資源名稱
- 瀏覽特定資料:GET + 資源名稱 + :id
- 新增一筆資料:POST + 資源名稱
- 修改特定資料:PUT + 資源名稱 + :id
- 刪除特定資料:DELETE + 資源名稱 + :id
REST 傳輸要求
- 客戶-服務器 ( client-Server ) → 客戶端和服務器結構
- 無狀態 ( Stateless ) → 連接協議具有無狀態性
- 緩存 ( Cache ) → 能夠利用 cache 機制增進性能
- 統一接口 ( Uniform Interface ) → 一制性的操作介面
- 分層系統 ( Layered System ) → 層次化的系統
- 按需代碼 ( Code-On-Demand ) → 例如 javascript
RESTful API 安全性