1 / 8
文档名称:

深入浅出Rest.doc

格式:doc   大小:704KB   页数:8页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

深入浅出Rest.doc

上传人:mh900965 2017/11/16 文件大小:704 KB

下载得到文件列表

深入浅出Rest.doc

相关文档

文档介绍

文档介绍:深入浅出Rest(理论性)
不知你是否意识到,围绕着什么才是实现异构的应用到应用通信的“正确”方式,一场争论正进行的如火如荼:虽然当前主流的方式明显地集中在基于 SOAP、WSDL和WS-*规范的Web Services领域,但也有少数人用细小但洪亮的声音主张说更好的方式是REST,表述性状态转移(REpresentational State Transfer)的简称。在本文中,我不会涉及争论的话题,而是尝试对REST和RESTful HTTP应用集成做实用性的介绍。以我的经验,有些话题一旦触及就会引来众多的讨论,当涉及到这方面话题的时候,我会深入详细地阐述。
REST关键原则
大部分对REST的介绍是以其正式的定义和背景作为开场的。但这儿且先按下不表,我先提出一个简单扼要的定义:REST定义了应该如何正确地使用(这和大多数人的实际使用方式有很大不同)Web标准,例如HTTP和URI。如果你在设计应用程序时能坚持REST原则,那就预示着你将会得到一个使用了优质Web架构(这将让你受益)的系统。总之,五条关键原则列举如下:
为所有“事物”定义ID
将所有事物链接在一起
使用标准方法
资源多重表述
无状态通信
下面让我们进一步审视这些原则。
为所有“事物”定义ID
在这里我使用了“事物”来代替更正式准确的术语“资源”,因为一条如此简单的原则,不应该被淹没在术语当中。思考一下人们构建的系统,通常会找到一系列值得被标识的关键抽象。每个事物都应该是可标识的,都应该拥有一个明显的ID——在Web中,代表ID的统一概念是:URI。URI构成了一个全局命名空间,使用URI标识你的关键资源意味着它们获得了一个唯一、全局的ID。
对事物使用一致的命名规则(naming scheme)最主要的好处就是你不需要提出自己的规则——而是依靠某个已被定义,在全球范围中几乎完美运行,并且能被绝大多数人所理解的规则。想一下你构建的上一个应用(假设它不是采用RESTful方式构建的)中的任意一个高级对象(high-level object),那就很有可能看到许多从使用唯一标识中受益的用例。比如,如果你的应用中包含一个对顾客的抽象,那么我可以相当肯定,用户会希望将一个指向某个顾客的链接,能通过电子邮件发送到同事那里,或者加入到浏览器的书签中,甚至写到纸上。更透彻地讲:的在线商城中,没有用唯一的ID(一个URI)标识它的每一件商品,可想而知这将是多么可怕的业务决策。
当面对这个原则时,许多人惊讶于这是否意味着需要直接向外界暴露数据库记录(或者数据库记录ID)——自从多年以来面向对象的实践告诫我们,要将持久化的信息作为实现细节隐藏起来之后,哪怕是刚有点想法都常会使人惊恐。但是这条原则与隐藏实现细节两者之间并没有任何冲突:通常,值得被URI标识的事物——资源——要比数据库记录抽象的多。例如,一个定单资源可以由定单项、地址以及许多其它方面(可能不希望作为单独标识的资源暴露出来)组成。标识所有值得标识的事物,领会这个观念可以进一步引导你创造出在传统的应用程序设计中不常见的资源:一个流程或者流程步骤、一次销售、一次谈判、一份报价请求——这都是应该被标识的事物的示例。同样,这也会导致创建比非RESTful设计更多的持久化实体。
下面是一些你可能想到的URI的例子:
/

最近更新

北师大版六年级下册数学第四单元 正比例和反比.. 7页

县乡教师选调进城考试《教育心理学》题库含完.. 55页

小升初六年级下册数学期末测试卷及答案(精选.. 7页

小升初六年级下册数学期末测试卷附参考答案【.. 6页

小升初数学应用题大全及参考答案【典型题】 14页

小升初数学应用题大全带答案(突破训练) 16页

病句类型示文稿浅谈 18页

小升初数学必刷应用题含完整答案【网校专用】.. 16页

小升初数学必刷应用题附参考答案(完整版) 15页

小升初数学期末模拟测试卷及参考答案【轻巧夺.. 6页

小升初数学期末模拟测试卷(精选题) 6页

小升初数学期末测试卷含答案【b卷】 6页

小升初数学期末测试卷附完整答案(全国通用).. 6页

小学三年级上册道德与法治期末测试卷精品带答.. 6页

小学六年级下册数学 圆柱与圆锥 测试题【学生.. 6页

小学六年级下册数学 圆柱与圆锥 测试题附答案.. 8页

小学六年级下册数学《圆柱与圆锥》专项练习精.. 7页

小学六年级下册数学圆柱与圆锥测试题【突破训.. 8页

小学六年级下册数学期中测试卷及参考答案(考.. 6页

小学六年级下册数学期中测试卷带答案(考试直.. 6页

小学六年级下册数学期末测试卷及完整答案(考.. 6页

小学六年级下册数学期末测试卷精品有答案 7页

(新)急救相关知识考试题库含答案(a卷) 54页

指尖饰品店项目融资方案 8页

2022-2023学年北京市西城区七年级下学期期末考.. 19页

白酒HACCP计划 14页

保密工作先进个人典型事迹材料 6页

供应商评价表表格 3页

2023年山东省济南外国语面向全省自主招生语言.. 15页

入党介绍人介绍发展对象情况范文(通用7篇) 1 13页