REST
维库,知识与思想的自由文库
|
表象化状态转变(英文:Representational State Transfer,简称REST)是Roy Fielding博士在2000年他的博士论文中提出来的一种软件架构风格。 目前在三种主流的Web服务实现方案中,因为REST模式的Web服务与复杂的SOAP和XML-RPC对比来讲明显的更加简洁,越来越多的web服务开始采用REST风格设计和实现。例如,Amazon.com提供接近REST风格的Web服务进行图书查找;雅虎提供的Web服务也是REST风格的。
[编辑] 宗旨REST 从资源的角度来观察整个网络,分布在各处的资源由URI确定,而客户端的应用通过URI来获取资源的表形。获得这些表形致使这些应用程序转变了其状态。随着不断获取资源的表形,客户端应用不断地在转变着其状态,所谓表形化的状态转变(Representational State Transfer)。 这一观点不是凭空臆造,而是通过观察当前web互联网的运作方式而抽象出来的。Roy Fielding 认为,
[编辑] 要点及标准需要注意的是,REST是一种设计风格而不是一个标准。REST通常基于使用HTTP,URI,和XML以及HTML这些现有的广泛流行的协议和标准。
[编辑] REST的要求
[编辑] 关于状态应该注意区别应用的状态和连接协议的状态。REST对于连接的无状态性实际上要求每次在无状态的连接协议中传送的信息包含应用中所有的状态信息。 [编辑] 实现举例例如,一个简单的网络商店应用, 列举所有商品, GET http://www.store.com/products 具体某一件商品, GET http://www.store.com/product/12345 下单购买, POST http://www.store.com/order, <purchase-order> <item> ... </item> </purchase-order> [编辑] REST的优点
对比非REST风格 [编辑] 實作
[编辑] 参考资料
the Design of Network-based Software Architectures》
|


