RESTful和SOAP、RPC 瞭解一下

最近在項目中涉及到RESTful,不是很瞭解,項目結束回過頭學習一下,順帶看一看SOAP和RPC。



先來了解一下他們三個到底是什麼?

  1. REST ( REpresentational State Transfer ),State Transfer 爲 "狀態傳輸" 或 "狀態轉移 ",Representational 中文有人翻譯爲"表徵"、"具象",合起來就是 "表徵狀態傳輸" 或 "具象狀態傳輸" 或 "表述性狀態轉移"。
    推薦閱讀:RESTful入門介紹

  2. SOAP 是基於 XML 的簡易協議,可使應用程序在 HTTP 之上進行信息交換。一種數據交換協議規範,是一種輕量的、簡單的、基於XML的協議的規範。它有什麼優點?簡單總結爲: 易用,靈活,跨語言,跨平臺

  3. RPC(Remote Procedure Call)—遠程過程調用,它是一種通過網絡從遠程計算機程序上請求服務,而不需要了解底層網絡技術的協議。


瞭解完我們看下他們用法?

REST主要原則:網絡上的所有事物都被抽象爲資源,每個資源都有一個唯一的資源標識符,同一個資源具有多種表現形式(xml,json等),對資源的各種操作不會改變資源標識符,所有的操作都是無狀態的,符合REST原則的架構方式即可稱爲RESTful。
RESTful用法
http://127.0.0.1/user/1 GET 根據用戶id查詢用戶數據
http://127.0.0.1/user POST 新增用戶
http://127.0.0.1/user PUT 修改用戶信息
http://127.0.0.1/user DELETE 刪除用戶信息


SOAP:首先需要理解就是SOAP偏向於面向活動,有嚴格的規範和標準,包括安全,事務等各個方面的內容,同時SOAP強調操作方法和操作對象的分離,有WSDL文件規範和XSD文件分別對其定義。
SOAP用法菜鳥教程SOAP實例

總的來說:REST可以看着是http協議的一種直接應用,默認基於json作爲傳輸格式,使用簡單,學習成本低效率高,但是安全性較低,而SOAP可以看着是一個重量級的協議,基於xml,SOAP在安全方面是通過使用XML-Security和XML-Signature兩個規範組成了WS-Security來實現安全控制的,當前已經得到了各個廠商的支持,.net ,php ,java 都已經對其有了很好的支持 。這是REST薄弱的地方。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章