欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

REST 相关 博客分类: ESB REST网络应用应用服务器SOAP网络协议 

程序员文章站 2024-02-22 14:03:34
...
最近由于工作需要,研究了一下REST。

目前REST已经成为了网络社区里的流行名词。那REST又是什么那?
REST - Representational State Transfer, 诞生于Roy Fielding(作为HTTP协议规范的主要制定者之一)的2000年博士论文
REST的明确定义

简单来说REST是一种基于Resource State的Web服务访问架构,目前REST作为网络应用的设计策略已经被广泛使用。目前AmazoneBayYahoo等都提供了REST的服务接口调用。

REST作为一组构架策略的描述,这个词汇也经常被用来描述一些简单用HTTP传输的XML的而没有使用类似于SOAP接口实现。

REST的设计核心就是抓住了Web成功的要素。REST的特点有:
    Client-Server 是一个以pull为基础的交互构架,服务的使用者采用pull方式获取信息
    Layered components 这样可以使得所有的中间层透明化,例如代理服务器,缓存服务器,网关等都可以被安插在客户端和资源之间,来提高性能保证安全
    Stateless 每一次客户端到服务器端的请求信息完整,并保证请求能够被充分理解。作为一种Stateless的交互,REST可以给我们带来以下的好处是客户端可以变 得非常简单,服务端的扩展性大大加强, 我们可以将一些简单的服务组合成为一个更大的服务。
    Cache 为了提高网络相应效率,需要提供可以使用缓存后者不使用缓存的标记
    Uniform interface 所有的资源都可以通过一个通用的接口来访问 (例如 HTTP GET, POST, PUT, DELETE)
    Named resoureces 系统是由那些能够使用URL来描述的资源所组成。
   
    我们知道HTTP提供了(GET,POST,DELET,这些动作)的描述, 我们可以通过这些方法来实现对特定资源(URI)的增删改查的操作。我们可以声称一个网络应用是RESTful如果我们能够通过HTTP GET请求来获取信息,使用HTTP POST来更新信息。
    
如何实现RESTful web service。
http://www.xfront.com/REST-Web-Services.html
    


其它相关资源    
http://c2.com/cgi/wiki?RestArchitecturalStyle
http://rest.blueoxen.net/cgi-bin/wiki.pl       

REST的教程
http://rest.blueoxen.net/cgi-bin/wiki.pl?BenjaminsRESTTutorial