2012年5月25日

REST:Representational State Transfer

因為 Service Stack裡面有提到 REST-ful

所以來研究一下

  1. http://zh.wikipedia.org/zh-tw/REST
  2. REST[轉貼]

  • 資源是由URI來指定。
  • 對資源的操作包括獲取、創建、修改和刪除資源,這些操作正好對應HTTP協議提供的GET、POST、PUT和DELETE方法。
  • 通過操作資源的表現形式 (指定URI)來操作資源。


優點:
  • 可以利用緩存Cache來提高響應速度
  • 通訊本身的無狀態性可以讓不同的伺服器的處理一系列請求中的不同請求,提高伺服器的擴展性
  • 瀏覽器即可作為客戶端,簡化軟體需求
  • 相對於其他疊加在HTTP協議之上的機制,REST的軟體依賴性更小
  • 不需要額外的資源發現機制
  • 在軟體技術演進中的長期的兼容性更好


REST-ful Web API 定義:
  • URI。
  • Web服務接受與返回的網際網路媒體類型,如 json、xml等。
  • Web服務在該資源上所支持的一系列請求方法(如:post、get、put、delete)。

疑問:

  1. 在REST[轉貼]中提到,一般網址:
    http://www.some_site.com/user/find/123
    到了 REST會變成 :
    http://www.some_site.com/user/123  搭配 http的「Get」

    http://www.some_site.com/user/123  搭配 http的「Put」
    這兩個 REST的網址都長得一樣,那沒有動詞的 URL要怎麼知道現在是要做 get還是 put ??
  2. MVC是否符合 REST設計風格??


沒有留言:

張貼留言