# 基礎 Restful API 的理解 ###### tags: `前端筆記` ## 什麼是 Restful API?  REST(表現層狀態轉移) > re -> representational > s -> state > t -> transfer > ful 結尾表示形容詞 Restful API 是一種開發結構。 ## Restful API 的好處? 1. 讓 APP 保持簡單 - 搭配 HTTP verbs 達成 ==CRUD==: > C: create -> `POST` > R: read -> `GET` > U: update -> `PUT` > D: delete -> `DELETE` - 以清楚明確的資源(resource)為發請求的 URL 3. 保持 APP 良好的擴充性 4. 維持良好的效能 ## 使用 Restful API 及不使用 Restful API 的差別 假設我有一個販賣冰淇淋的 APP,不使用 Restful API 開發的話可能會以下列的方法開發: ```javascript= 取得冰淇淋口味 GET /getFlavor 取得冰淇淋口味 GET /getFlavor/1 修改冰淇淋口味 PUT /editFlavor/1 新增冰淇淋口味 POST /craeteFlavor 刪除冰淇淋口味 DELETE /deleteFlavor/1 ``` 但是用 Restful API 的架構開發的話,可以用資源(resource)當作發請求的 URL,再加上不同的 HTTP verbs 執行不同種類的請求: 1. 動作藏在 HTTP verbs 內,讓請求可以更清楚明瞭 2. 以 flavor 當作資源定位發出的 URL,使得 URL 可以保持較好的閱讀性 ```javascript= 取得冰淇淋口味 GET /flavor 取得冰淇淋口味 GET /flavor/1 修改冰淇淋口味 PUT /flavor/1 新增冰淇淋口味 POST /flavor 刪除冰淇淋口味 DELETE /flavor/1 ``` ## 參考資料 1. [[API] (1) - 定義 1 - 什麼是 REST/RESTful ?](https://ithelp.ithome.com.tw/articles/10157431) 2. [What is a REST API?](https://www.youtube.com/watch?v=lsMQRaeKNDk)
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up