RESTful Web Services Cookbook中文版

当前位置:首页 > 计算机网络 > 网络与数据通信 > RESTful Web Services Cookbook中文版

出版社:电子工业出版社
出版日期:2011-9
ISBN:9787121143908
作者:Subbu Allamaraju
页数:299页

章节摘录

版权页:插图:在任何分布式的客户端/服务器环境中管理变更都是很困难的。在这样的环境中,客户端依赖于服务器能履行自己的承诺。RESFlul Web服务也不例外,对它们而言,这包括uRI、资源、结构体和表述的内容、它们的格式,以及每个资源的HTTP方法。直到您开始考虑向后兼容性(backward compatibility)之后,对服务器的变更好像都成了有益的了。变化是向后兼容的,在修改服务器时就无须升级客户端。客户端会忽略您升级了服务器这一事实,继续按原有方式进行调用,就好像什么变化都没发生过一样,当然这不包括服务器升级期间的不可用时间。还有一种兼容性被称为向前兼容性(forward compatibility),当有多个客户端和服务器在不同时间点升级时,这一点是很重要的。在这种情况下,较新的客户端可能会与老的服务器进行交互。向前兼容性的目的是保证较新的客户端能继续使用老的服务器,虽然功能有所减少,但不会出现问题。您的应用程序中仅需要考虑向后兼容性,还是需要同时考虑向后和向前兼容性取决于您的操作环境。本章描述的内容能帮助您处理好这两种兼容性。让您能够保持兼容性的特性是可扩展性,这是为未来的变化预留余地的设计过程。

媒体关注与评论

“无论您打算使用何种语言构建RESTfuI服务,本书都是一本极佳的指南。内容丰富、考虑周到,囊括了与服务设计与实现相关的很多最佳实践。”  ——Eben Hewitt架构师 “Java SOA Cookbook”作者

内容概要

“无论您打算使用何种语言构建RESTful服务,本书都是一本极佳的指南。内容丰富、考虑周到,囊括了与服务设计与实现相关的很多最佳实践。”
——Eben Hewitt 架构师 “Java SOA Cookbook”作者

书籍目录

前言 i
第1章 使用统一接口 1
1.1 如何保持交互的可见性 2
1.2 何时需要权衡可见性 4
1.3 如何维护应用程序状态 6
1.4 如何在服务器端实现安全和幂等的方法 9
1.5 如何在客户端处理安全和幂等方法 12
1.6 何时使用get方法 13
1.7 何时使用post方法 15
1.8 如何使用post方法创建资源 17
1.9 何时使用put方法创建新资源 19
1.10 如何使用post方法实现异步任务 20
1.11 如何使用delete方法实现异步删除 23
1.12 何时使用自定义http方法 24
1.13 何时及如何使用自定义http标头 26
第2章 识别资源 29
2.1 如何从领域名词中识别资源 30
2.2 如何选择资源粒度 31
2.3 如何将资源组织为集合 32
.2.4 何时将资源合并为复合资源 35
2.5 如何支持计算或处理函数 37
2.6 何时及如何使用控制器来操作资源 40
第3章 设计表述 45
3.1 如何使用实体头来注解表述 46
3.2 如何解释实体头 50
3.3 如何避免字符编码不匹配 51
3.4 如何选择表述格式和媒体类型 52
3.5 如何设计xml表述 56
3.6 如何设计json表述 58
3.7 如何设计集合表述 59
3.8 如何保持同构的集合 61
3.9 如何在表述中使用可移植的数据格式 63
3.10 何时使用实体标识符 65
3.11 如何在表述中编码二进制数据 66
3.12 何时以及如何提供html表述 68
3.13 如何返回错误 70
3.14 如何在客户端处理错误 74
第4章 设计uri 77
4.1 如何设计uri 77
4.2 如何将uri用做模糊标识符 81
4.3 如何让客户端将uri视为模糊标识符 83
4.4 如何保持酷的uri 85
第5章 web链接 88
5.1 如何在xml表述中使用链接 89
5.2 如何在json表述中使用链接 92
5.3 何时以及如何使用链接标头 93
5.4 如何分配链接关系类型 94
5.5 如何使用链接来管理应用程序的流程 97
5.6 如何处理临时uri 101
5.7 何时以及如何使用uri模板 103
5.8 如何在客户端使用链接 105
第6章 atom和atompub 108
6.1 如何利用atom建模资源 109
6.2 何时使用atom 113
6.3 如何使用atompub服务和分类文件 117
6.4 如何针对feed和entry资源使用atompub 119
6.5 如何使用媒体资源 122
第7章 内容协商 125
7.1 如何标明客户端偏好 126
7.2 如何实现媒体类型协商 128
7.3 如何实现语言协商 129
7.4 如何实现字符编码协商 131
7.5 如何支持压缩 132
7.6 何时以及如何发送vary头 133
7.7 如何处理协商失败 134
7.8 如何使用代理驱动的内容协商 136
7.9 何时支持服务器驱动的协商 137
第8章 查询 139
8.1 如何针对查询设计uri 139
8.2 如何设计查询响应 142
8.3 如何支持有大量输入的查询请求 144
8.4 如何存储查询 146
第9章 web缓存 149
9.1 如何设置过期缓存头 150
9.2 何时设置过期缓存头 153
9.3 何时以及如何在客户端中使用过期缓存头 156
9.4 如何支持复合资源的缓存 157
9.5 如何保持新鲜且温暖的缓存 158
第10章 条件请求 161
10.1 如何生成last-modified和etag头 163
10.2 如何在服务器端实现条件get请求 164
10.3 如何从客户端提交条件get和head请求 167
10.4 如何在服务器端实现条件put请求 169
10.5 如何在服务器端实现条件delete请求 173
10.6 如何从客户端发起无条件get请求 175
10.7 如何从客户端提交条件put和delete请求 176
10.8 如何使post请求条件化 178
10.9 如何生成一次性uri 181
第11章 其他内容 184
11.1 如何复制资源 185
11.2 如何合并资源 187
11.3 如何移动资源 189
11.4 何时使用webdav方法 191
11.5 如何支持跨服务器的操作 193
11.6 如何获取资源的快照 195
11.7 如何撤销资源更新 198
11.8 如何为部分更新提炼资源 200
11.9 如何使用patch方法 203
11.10 如何批量处理相似的资源 206
11.11 如何触发批量操作 209
11.12 何时使用post来合并多个请求 211
11.13 如何支持批量请求 215
11.14 如何支持事务 217
第12章 安全 220
12.1 如何使用基本身份验证来验证客户端 221
12.2 如何使用摘要身份验证来验证客户端 224
12.3 如何使用三方oauth 226
12.4 如何使用两方oauth 232
12.5 如何处理uri中的敏感信息 235
12.6 如何维护表述的机密性与完整性 237
第13章 可扩展性与版本控制 239
13.1 如何维持uri的兼容性 240
13.2 如何维持xml和json表述的兼容性 242
13.3 如何扩展atom 245
13.4 如何维持链接的兼容性 249
13.5 如何实现支持可扩展性的客户端 250
13.6 何时需要版本化 251
13.7 如何版本化restful web服务 252
第14章 服务发现 256
14.1 如何编写restful web服务的文档 256
14.2 如何使用options 259
附录a 辅助读物 261
附录b rest概述 265
附录c http方法 268
附录d atom syndication format 273
附录e 链接关系类型 279
索引 287

编辑推荐

REST设计哲学激起了Web与企业应用开发者的无尽遐想,但用这种方式来开发真正的Web服务并非易事。《RESTful Web Services Cookbook(中文版)》包含了超过100个技巧。帮助您充分利用REST,HTTP和Web基础设施。无论使用何种编程语言和开发框架,您都将了解到如何为客户端/服务器应用设计满足性能、可扩展性、可靠性及安全目标的。RESTful Web服务。《RESTful Web Services Cookbook(中文版)》的每一节都包含一到两个问题描述,带有简单易学、步骤详尽的解决方案,还有使用HTTP请求与响应、XML、JSON和Atom片段的例子。您还将看到针对每个解决方案的实现指南,讨论其中的利弊和权衡。了解如何设计满足多种应用场景的资源,成功设计表述与URI,使用链接与链接标头来实现超文本约束,理解何时及如何使用Atom和AtomPub,为了支持缓存,该做什么,不该做什么,了解如何实现并发控制,处理涉及复制、合并、事务、批处理及部分更新的高级用例,保护Web服务,支持OAuth。Subbu Allamaraju,Yahoo!架构师。他设计了RESTful web服务的标准及实践,目前负责开发者平台的架构工作。Subbu之前就职于BEA System,Inc..开发Web服务及基于Java的软件。他参与了4本J2EE~H关书籍的编写,均由Wrox发行出版。

作者简介

《RESTful Web Services Cookbook(中文版)》从实践出发,涉及设计restful web服务的各个方面,通过问题描述、解决方案、问题讨论的形式在14个章节中详细讨论了统一接口、资源、表述、uri、链接、请求、缓存、安全等诸多内容。无论读者是否设计过restful web服务,具体使用哪种语言,都能在阅读过程中有所收获。《RESTful Web Services Cookbook(中文版)》也可作为手册,根据具体问题描述在书中查找解决办法。

图书封面


 RESTful Web Services Cookbook中文版下载 精选章节试读 更多精彩书评



发布书评

 
 


精彩书评 (总计1条)

  •     我是看的infoQ 的中文样张和pdf 的英文版.书中讲了怎样设计一个好的REST 格式. REST架构师实战手册真正生产环境应该使用现成的开源的rest server 或者 REST 框架 的,否则自己白手起家设计, 从头造轮子来设计这样一个Rest 架构,是不是太不上算了, 而且也不可靠但是即使你使用了框架也应该知道标准的 REST 是什么样子的是应该如何使用的这本书就是这个作用

精彩短评 (总计95条)

  •     挺好的,很多人都看了,项目也基本完成,只是发票无法认证,没有报销,再次贡献了!
  •     内容细致,可以做为设计依据
  •     这套书好像很好,老公一直在买。
  •     差不多是HTTP的具体应用讲一遍
  •     翻译减一分
  •     读了 1 至 4 章,以及第 8 章。
  •     此的质量与之前所有买的书都不能比完全一盗版货,感觉就是像快递员调包换了一本路边摊10元/本的那种货。
  •     聊胜于无吧
  •     顺序反了应该先读那本。
  •     对于许多预学习Rest风格编程的架构师而言,在了解基础开发流程后,需要学习先行的最佳实践,本书介绍了不同场景的问题和解决方案,是一本非常有益的指导书
  •     醍醐灌顶
  •     就是关于RESTFul设计的一些tips吧,可以当作课外读物。
  •     Restful web service 最佳实践指南
  •     书不错,慢慢消化。希望对我能有用。
  •     看了下infoq上提供的样章
  •     难道讲到的HTTP、XML和JSON就是Web Services的典型应用?~~~
  •     比较侧重理论的工具书,实用性较小。
  •     本书很薄, 没有一句废话, 不太适合初学者. 对于正在开发REST服务的开发者来说, 堪称神书.
  •     学习分布式架构基础知识之一。
  •     英文版:http://book.douban.com/subject/4224978/
  •     内容还可以,就是纸质质量不怎么样。
  •     涉及了几乎所有的基础知识,非常全面,也非常具有可操作性
  •     讲了很多HTTP基础的东西可以跳过。推荐看REST cookbook那本。 看下来发现REST设计原则与其他相比就两点。第一:将作用域(类似作用对象)表现在URI中而不是封装在HTTP CONTENT里面;第二:将对资源的操作(更新、删除、插入等)用应用层协议HTTP的PUT,DELETE方法解决,而不是在URI中再次造一些createdogs,deletedogs的接口(路劲)。 关于RESTFUL的设计最佳实践,两本书中都没有提及,事实上目前还没有RESTFUL的最佳实践。想找实践需要看看其他的书,而不是这本书。
  •     我的REST入门书
  •     RESTFul
  •     cookbook的东西不能期待太高:)
  •     在读中
  •     不错,可以读读,满足学习需要~
  •     书不错。很实用。。可惜,我又在网上找到电子版的了。。郁闷。。钱纳!··
  •     本书不含大篇幅的代码,很好
  •     我是看的infoQ 的中文样张和pdf 的英文版.
      书中讲了怎样设计一个好的REST 格式. REST架构师实战手册
      真正生产环境
      应该使用现成的开源的rest server 或者 REST 框架 的,
      否则自己白手起家设计, 从头造轮子来设计这样一个
      Rest 架构,是不是太不上算了, 而且也不可靠
      
      但是即使你使用了框架也应该知道标准的 REST 是什么样子的
      是应该如何使用的
      
      这本书就是这个作用
  •     不错,理论与实践结合。
  •     很清晰
  •     这本书很好,RESTful Web Services中的著作.如果想要了解RESTful Web Services,我建议就读它.比起理论性的说明,这本书以实际的例子说明RESTful Web Services是什么以及怎样运作.我很高兴看到现在已经有了中文版,而且翻译得还不错,这就更难能可贵了.

    还有:当当这个评价编辑功能做得太烂了,标题我输入了N遍,因为输入法的缘故,常常无故被清空,我只好说"不错"了.也没心情和时间反复纠缠于此.希望尽快改进!!
  •     只读了infoq的免费版
  •     这本书我也买了啊?都是不知道放到哪个角落里去了
  •     告诉我门怎么用。。
  •     看不懂,跟自己想要的不一样
  •     不识Rest真面目,只缘未在此山中
  •     书中主要讲web服务相关的,通俗易懂,喜欢o'reilly!
  •     很满意,也很实用,信赖当当网。
  •     一般般的看'不够深入
  •     好书
  •     用来当Rest手册查询,还不错!
  •     可以当作入门的参考书,对初学者用处较大
  •     书很好,最佳实践
  •     这本书对于RESTful确实具有一定的实操性,但对于REST原理以及相关的领域如安全、认证、缓存、Atom、HTTP协议等皆点到为止,这些内容都在附录A的辅助阅读中列及。
  •     REST很阳春白雪,看一下这本书接接地气。
  •     是本cookbook 买了有些后悔 还很贵,感觉没什么大价值
  •     有点We经验的人来看这本书更好,整整啃书呢。
  •     包装完整正版
  •     正需要,等待书快点到来,开发要用,希望能帮助到我,不过O'REALY的书还没叫我失望过
  •     这本是给老公买的,他找这么书很久了,拿到手很开心,说很实用的一本书
  •     很好的书,非常有参考价值。以前没有仔细看,遗憾了
  •     看的电子版。好书,可以称得上cookbook,但并非最佳实践,有些仅供参考。
  •     以http报文的形式讲解了如何构建restful web services. 不针对具体语言。真的学到了很多东西。
  •     感觉一般,翻译的比较差的缘故吧
  •     案例很多,引导性思考问题
  •     看了这本书我觉得以前学的所谓REST,只是REST的形(还是一部分)。这本书讲了REST的神,也就是最大限度利用HTTP协议完成REST各种逻辑,可谓大开眼界。
  •     讲的不像是cookbook,但是讲得很详细,
  •     朋友推荐的 大概看了一下 还不错
  •     Good,比 Restful Web Service 好懂。实践篇。
  •     理论多,实践少
  •     很多是理论的东西 不过挺不错的。
  •     对接口设计的坑有很好的指导。当然,cookbook类型的书不适合按部就班的读。
  •     cookbook还是比较适合做工具书
  •     刚刚翻了翻,还没完全看完,不过感觉还不错
  •     以实战为主,比较适合开发使用。
  •     排版乱,表述混乱。
  •     书收到了~很好,以后还会来
  •     看的前五章,太浅了,连HATEOAS都没讲?
  •     看完了,实操内容比较少一些
  •     讲了一些常见问题的解决方案,还算不错!
  •     直接看网上的实例和文档都比这个好.....=.=
  •     内容讲的挺仔细的
  •     还没看完,但是用上了一些设计思想
  •     新的技术和名词还是不要翻译好一点,翻译了反倒容易歧义
  •     翻译的字感觉有点断,技术书可能大都这类型了
  •     读到第7章了才发现是cookbook.
  •     刚买来,还没怎么看,感觉不错
  •     Cookbook 类不能拿来读,弃
  •     意义不大。
  •     站在高端的书
  •     把评价给忘了
  •     豆瓣的RESTful API设计的不错, 值得作为参考
  •     一些经验和最佳实践
  •     本书详细地介绍了如何设计符合REST架构风格的WEB服务
  •     并没有写得在项目中实例
  •     纸张很轻,像原版书的感觉。 内容有些啰嗦,但实例很多。原理性,指导方针很多,算是最佳实践一类,用来巩固不错,入门会比较一头雾水。ps,atom之前作为客户端用过,没想到居然只是feed相关标准,高估了
  •     更像一种 讲述 rest full 协议的一本书。思想层面的东西很多,没有 关于关于一些 最佳实践的内容。和我预期的不一样。有点失望!
  •     讲的不是入门
  •     感觉买错了,应该买另一本的,这本主要都在讲实践,少基础性的知识
  •     读一半被饭团抢走了 ToT 于是剩下一半不读了
  •     对http协议的解析,以及各种方法的详细解说,该怎么用,在哪里用,什么时候用都有说,整本书都偏向于实践。
  •     书的纸张还行,包装也挺整洁的。
 

外国儿童文学,篆刻,百科,生物科学,科普,初中通用,育儿亲子,美容护肤PDF图书下载,。 零度图书网 

零度图书网 @ 2024