【ASP.NET MVC 學習筆記】- 19 REST和RESTful Web API


本文參考:http://www.cnblogs.com/willick/p/3441432.html

1、目前使用Web服務的三種主流的方式是:遠程過程調用(RPC),面向服務架構(SOA)以及表征性狀態轉移(REST),其中REST模式的Web服務與復雜的SOA和RPC對比來講顯的更加簡潔,越來越多的web服務開始采用REST風格設計和實現。

2、REST即Representational State Transfer,中文翻譯為表征狀態轉移。它從資源的角度來觀察整個網絡,分布在各處的資源由URI確定,而客戶端的應用通過URI來獲取資源的表征。獲得這些表征致使這些應用程序轉變了其狀態。隨着不斷獲取資源的表征,客戶端應用不斷地在轉變着其狀態,這就是所謂的表征狀態轉移。

3、REST是設計風格而不是標准,但REST設計風格常基於使用HTTP,URI,和XML以及HTML這些現有的廣泛流行的協議和標准。REST設計風格有如下要點:

  • 資源是由URI來指定。
  • 對資源的操作包括獲取、創建、修改和刪除資源,這些操作正好對應HTTP協議提供的GET、POST、PUT和DELETE方法。
  • 通過操作資源的表現形式來操作資源。
  • 資源的表現形式則是XML或HTML,取決於讀者是機器還是人,是消費web服務的客戶軟件還是web瀏覽器。當然也可以是任何其他的格式,如JSON。

4、RESTful Web API(也稱為RESTful Web服務)是一個使用HTTP並遵循REST原則的Web服務。它從以下請求資源的三個方面進行定義:

  • URI,比如:http://example.com/resources/。
  • Web服務接受與返回的互聯網媒體類型,比如:JSON,XML ,YAML 等。
  • Web服務在該資源上所支持的一系列請求方法(比如:POST,GET,PUT或DELETE)。

    下表列出了在實現 RESTful Web API 時HTTP請求方法的典型用途:

    

5、不像基於SOAP的Web服務,RESTful Web服務並沒有“正式”的標准。這是因為REST是一種架構,而SOAP只是一個協議。雖然REST不是一個標准,但在實現RESTful Web服務時可以使用其他各種標准(比如HTTP,URL,XML,PNG等)。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM