Restlet - REST架构风格的介绍

一、关于
    2000年,Roy T. Fielding在他的博士学位论文《Architectural Styles and the Design of Network-based Software Architectures》(中文版名为《架构风格与基于网络的软件架构设计》)中,推导出来了REST这种新的架构风格。REST并不是一种具体的技术,也不是一种具体的规范,REST其实是一种内涵非常丰富的架构风格。

二、原则
    1、面向资源
        资源是一种看待服务器的方式,每个资源是服务器上一个可命名的抽象概念。因为资源是一个抽象的概念,所以它可以代表服务器文件系统中的一个文件、数据库中的一张表等等具体的东西。面向资源即使用URI标识所有值得标识的事物,无论这些资源代表单一数据项、数据项集合、虚拟亦或实际的对象还是计算结果等。
    2、超文本驱动
       “超文本驱动”又名“将超媒体作为应用状态的引擎”(Hypermedia As The Engine Of Application State,缩写为HATEOAS)。资源之间通过超链接相互关联,超链接既代表资源之间的关系,也代表可执行的状态迁移。在超媒体之中不仅仅包含数据,还包含了状态迁移的语义,以超媒体作为引擎,驱动Web应用的状态迁移。即超媒体是链接的思想,使用链接指引可以被标识的资源。
    3、统一接口
        HTTP协议中定义了一个操作资源的统一接口,主要包括 GET、POST、PUT、DELETE、PATCH、HEAD、OPTIONS。REST要求,必须通过统一的接口来对资源执行各种操作,且其操作语义必须由HTTP消息体之前的部分完全表达,不能将操作语义封装在HTTP消息体内部。
    4、资源多重表述
        资源的表述是一段对于资源在某个特定时刻的状态的描述。可以在客户端-服务器端之间转移(交换)。资源的表述可以有多种格式,例如HTML/XML/JSON/纯文本/图片/视频/音频等等。资源多重表述即针对不同的需求提供资源多重表述。
    5、无状态通信
        服务器端不保持除了单次请求之外的,任何与其通信的客户端的通信状态,通信的会话状态应该全部由客户端负责维护。

三、参考
    http://www.infoq.com/cn/articles/rest-introduction/  

    http://www.infoq.com/cn/articles/understanding-restful-style?utm_source=infoq&utm_medium=popular_links_homepage

 


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值