2020-10-04|閱讀時間 ‧ 約 2 分鐘

什麼是RESTful API

REST全名為Representational State Transfer,它是一種軟體架構風格,不是一種標準。 以REST架構設計的系統就可以稱為 RESTful,就像是美麗 (Beauty) 的事物可以稱為 Beautiful。
假設我們正在開發某個專案的後端Service,可能會設計出這樣的API:
- 獲取所有使用者 /getAllUsers - 獲取特定使用者 /getUser/1 - 新增使用者 /createUser - 更新特定使用者 /updateUser/1 - 刪除特定使用者 /deleteUser/1
像這種API就不是RESTful API了,這些API可能全都是用POST,也能達到目的,但就會變成出現像是updateUser這種冗長的命名,而且如果是複雜一點的系統,甚至有可能會花很多時間在想怎麼命名比較好。

若是以 REST 風格來開發 RESTful API 的話,就會變成這樣:
- 獲取所有使用者 /GET /users - 獲取特定使用者 /GET /user/1 - 新增使用者 /POST /user - 更新特定使用者 /PUT /user/1 - 刪除特定使用者 /DELETE /user/1
善用 HTTP method這種有意義的動詞,可以幫助我們很快速的理解這個API是要幹嘛,例如看到GET http://www.xxx.com/user/1,可以很自然的知道,這個API會回傳id=1的使用者資料。
因此,遵照REST風格設計的API,不只看起來簡潔且好理解,這樣的設計也比較好維護呢!
分享至
成為作者繼續創作的動力吧!
小弟是一位軟體工程師,樂於幫助他人,撰寫技術文章除了幫助自己複習以外,也希望可以幫助到他人,若文章內容有誤,還請大大不吝給予指教!
© 2024 vocus All rights reserved.