REST、RESTful 与 RESTful API
轉載:https://blog.csdn.net/xiaojin21cen/article/details/78696943
REST
REST 即 REpresentational State Transfer 。?
State Transfer 為 “狀態傳輸” 或 “狀態轉移 “,Representational 中文有人翻譯為”表征”、”具象”。合起來就是 “表征狀態傳輸” 或 “具象狀態傳輸” 或 “表述性狀態轉移”
REST是一種軟件架構風格。主要有以下特點:
- 1.資源通過URL來指定和操作。
- 2.對資源的操作包括獲取、創建、修改和刪除,正好對應HTTP協議的GET,POST,PUT和DELETE方法。
- 3.連接是無狀態性的。
- 4.能夠利用Cache機制來提高性能。”
它基于HTTP協議,并不涉及新的技術,而且與SOAP,XML-RPC相比,更加簡潔、高效。
這里談談我對這四個設計原則的理解。
顯式地使用 HTTP 方法
這個是對Web方式的回歸。通過顯式的調用HTTP的方法(POST、GET、PUT 和 DELETE)來完成資源數據的CURD。
無狀態
出于對服務更好地支持負載均衡和故障轉移功能、代理和網關的服務器集群功能設計。
公開目錄結構式的 URI
資源結構的規范化。目錄結構式也是資源結構設計時要考慮的問題,如何設計資源的結構來支持系統的業務?特別是多參數查詢業務。
傳輸 XML、JavaScript Object Notation (JSON),或同時傳輸這兩者
客戶端請求選用最適合的特定內容類型。服務的構造應該利用內置的 HTTP Accept Header,其中該 Header 的值為 MIME 類型。
總體來看,REST風格的工作主要集中在系統的設計階段,要求按照其原則來設計資源的結構和API。這有利于后期的維護和擴展。
RESTful
REST 指的是一組架構約束條件和原則。滿足這些約束條件和原則的應用程序或設計就是 RESTful。
HTTP 請求在 RESTful Web 服務中的典型應用
| 一組資源的 URI,比如?http://www.example.com/resources/ | 列出 URI 及該資源組中每個資源的詳細信息 | 使用一組給定的資源替換當前整組資源 | 在本組資源中創建 /追加一個新資源 | 刪除整組資源 |
| 單個資源的 URI,比如?http://www.example.com/resources/1 | 獲取給定資源的詳細信息 | 替換 / 創建指定的資源,并將其追加到相應的資源組 | 把指定的資源作為資源組,并在其下創建 / 追加一個新元素,使其隸屬于當前資源 | 刪除指定元素 |
RESTful API
RESTful API 是一套互聯網應用程序的 API 設計理論。
RESTful API 的返回結果應該符合以下規范
GET /collection:返回資源對象的列表(數組)?
GET /collection/resource:返回單個資源對象?
POST /collection:返回新生成的資源對象?
PUT /collection/resource:返回完整的資源對象?
PATCH /collection/resource:返回完整的資源對象?
DELETE /collection/resource:返回一個空文檔
轉載于:https://www.cnblogs.com/mybatis/p/9395710.html
總結
以上是生活随笔為你收集整理的REST、RESTful 与 RESTful API的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 线程、协成、IO模型
- 下一篇: 在项目中谨慎为系统类添加分类!!!!!