Skip to content
On this page

Restful API 路由語義化設計風格

說明

以 http method 為主的設計方式 (CRUD 對應),是一種路由語義化的設計風格,可以透過 url了解請求資源的「動作」與「資源」。

圖片出處

bash
瀏覽全部資料:GET    資源名稱     # GET    https://www.example.com/todos
瀏覽特定資料:GET    資源名稱/:id # GET    https://www.example.com/todos/1
新增一筆資料:POST   資源名稱.    # POST   https://www.example.com/todos
修改特定資料:PUT    資源名稱/:id # PUT    https://www.example.com/todos/1
刪除特定資料:DELETE 資源名稱/:id # DELETE https://www.example.com/todos/1

動作

指的是 http 的 method

  • GET 讀取資源
  • POST 新增資源
  • PUT 替換資源
  • DELETE 刪除資源
  • PATCH 更新資源部份內容

資源

指的是請求的 url 接口,相同的資源 url 必須是固定的。

bash
https://www.example.com/posts
https://www.example.com/posts/:id

建議

  • 若有兩個字組合,建議使用 - 連結。
  • 大多是使用「複數」命名 posts

特性

  • 唯一資源接口 url

    bash
    
    GET     /api/post/item
    DELETE  /api/post/delete
    
    
    GET     /api/posts/:id
    DELETE  /api/posts/:id
    
  • 可以由 url 來知道資料的階層

  • 語意化請求動作 methods

  • 無狀態請求

缺點

  • 請求數量驚人

Reference