表现层状态转换
表现层状态转换 (REST,英文: Representational State Transfer )是 Roy Thomas Fielding ( 英语 : Roy Thomas Fielding ) 博士于2000年在他的博士论文 [1] 中提出来的一种万维网软件架构风格,目的是便于不同软件/程序在网络(例如互联网)中互相传递信息。 表現層狀態轉換 (REST,英文:Representational State Transfer)是根基於超文本傳輸協定(HTTP)之上而確定的一組約束和屬性,是一種設計提供全球資訊網絡服務的軟體構建風格。符合或相容於這種架構風格(簡稱為 REST 或 RESTful)的網絡服務,允許用戶端發出以統一資源標識符存取和操作網絡資源的請求,而與預先定義好的無狀態操作集一致化。因此表現層狀態轉換提供了在互聯網絡的計算系統之間,彼此資源可交互使用的協作性質(interoperability)。相對於其它種類的網絡服務,例如 SOAP服務則是以本身所定義的操作集,來存取網絡上的資源。 目前在三种主流的Web服务实现方案中,因为REST模式与复杂的SOAP和XML-RPC相比更加简洁,越来越多的web服务开始采用REST风格设计和实现。例如,Amazon.com提供接近REST风格的Web服务執行图书查詢;雅虎提供的Web服务也是REST风格的。 目录 1 要点及标准 1.1 可重新表达的状态迁移的特征 1.2 具体说明 1.3 关于状态 1.4 應用於Web服務 2 实现举例 3 REST的优点 4 实现 5 参考文献 5.1 引用 5.2 网页 要点及标准 需要注意的是,REST是设计风格而 不是 标准。REST通常基于使用HTTP,URI,和XML以及HTML这些现有的广泛流行的协议和标准。 资源是由URI来指定。 对资源的操作包括获取、创建、修改和删除资源,这些操作正好对应HTTP协议提供的GET、POST、PUT和DELETE方法。 通过操作资源的表现形式来操作资源。 资源的表现形式则是XML或者HTML,取决于读者是机器还是人,是消费web服务的客户软件还是web浏览器。当然也可以是任何其他的格式。 可重新表达的状态迁移的特征 统一接口(Uniform Interface) 1. 以资源为基础 每个资源都可以...