《使用HTML5和Node构建超媒体API》探讨了超媒体API 的设计,介绍了作为超媒体API 的构件块的超媒体因子,并讲解了基本格式、状态转移、领域风格和应用流程这4 种超媒体设计元素;之后作者结合具体的场景,通过3个动手实验章节,从超媒体因子和超媒体设计元素入手,用实际的代码向我们详细地演示了超媒体API 的设计;最后介绍了超媒体设计的文档编写、注册与发布等内容。
《使用HTML5和Node构建超媒体API》适合系统架构师和Web 开发者阅读。
序 ................................................................................. xi
前言 .............................................................................xiii
第1 章 理解超媒体 ........................................................ 1
HTTP、MIME 和超媒体 ........................................................................................2
HTTP 是传输协议 ...........................................................................................2
MIME 是媒体类型标准 ...................................................................................3
超媒体是引擎 ..................................................................................................5
使用超媒体APIs 编写Web 应用 ...........................................................................6
类型封送困局 ..................................................................................................7
超媒体解决方案 ............................................................................................10
识别超媒体:超媒体因子(H-Factors) ...............................................................13
链接因子 .......................................................................................................14
控制因子 .......................................................................................................16
超媒体设计元素 ...................................................................................................19
基本格式 .......................................................................................................20
状态转移 .......................................................................................................23
领域风格 .......................................................................................................25
应用流程 .......................................................................................................28
总结 .....................................................................................................................32
后续内容 ..............................................................................................................33
第2 章 XML 超媒体 .................................................... 35
场景 .....................................................................................................................35
设计Maze XML 媒体类型 ...................................................................................36
识别状态转移 ................................................................................................36
选择基本设计元素 ........................................................................................37
Maze+XML 文档 ...........................................................................................38
示例数据 ..............................................................................................................41
服务器代码 ..........................................................................................................42
集合状态响应 ................................................................................................43
单项状态响应 ................................................................................................43
格子状态响应 ................................................................................................44
退出状态响应 ................................................................................................45
客户端代码 ..........................................................................................................46
迷宫游戏示例 ................................................................................................46
迷宫机器人示例 ............................................................................................51
总结 .....................................................................................................................56
第3 章 JSON 超媒体 ................................................... 57
场景 .....................................................................................................................57
设计Collection+JSON 媒体类型 .........................................................................58
识别状态转移 ................................................................................................58
选择基本设计元素 ........................................................................................59
Collection+JSON 文档...................................................................................60
任务应用语义 ......................................................................................................64
数据模型 .......................................................................................................65
写入模板 .......................................................................................................66
预定义查询 ...................................................................................................67
示例数据 ..............................................................................................................68
任务文档 .......................................................................................................69
设计文档 .......................................................................................................69
服务器代码 ..........................................................................................................70
集合状态响应 ................................................................................................71
条目状态响应 ................................................................................................72
查询状态表示 ................................................................................................73
处理模板写入 ................................................................................................75
客户端代码 ..........................................................................................................77
单页界面任务示例 ........................................................................................77
任务命令行示例 ............................................................................................88
总结 .....................................................................................................................92
第4 章 HTML5 超媒体 ................................................. 95
场景 .....................................................................................................................95
设计Microblog 媒体类型 ....................................................................................96
使用HTML5 表达应用领域语义 ..................................................................96
识别状态转移 ................................................................................................98
选择基本设计元素 ...................................................................................... 103
Microblog 应用语义配置 ............................................................................. 104
示例数据 ............................................................................................................ 110
用户文档 ..................................................................................................... 111
消息文档 ..................................................................................................... 111
关注文档 ..................................................................................................... 111
设计文档 ..................................................................................................... 111
服务器代码 ........................................................................................................ 113
验证用户 ..................................................................................................... 114
注册新用户 ................................................................................................. 115
消息响应 ..................................................................................................... 117
用户响应 ..................................................................................................... 119
客户端代码 ........................................................................................................ 122
POSH 客户端 .............................................................................................. 123
Ajax 风格的QuoteBot 客户端 ..................................................................... 126
总结 ................................................................................................................... 134
第5 章 为超媒体设计编写文档 ................................... 135
要求、遵从性与RFC 2119 ................................................................................ 135
RFC 2119 关键词 ........................................................................................ 136
使用RFC 2119 关键词编写的示例文档 ...................................................... 137
定义遵从性 ................................................................................................. 137
为媒体类型设计编写文档 .................................................................................. 138
一般布局安排 .............................................................................................. 138
为XML 设计编写文档 ................................................................................ 143
为JSON 设计编写文档 ............................................................................... 144
为HTML 设计编写文档 .............................................................................. 146
为应用领域特定信息编写文档 .................................................................... 148
发布媒体类型设计 ...................................................................................... 152
媒体类型的扩展与版本控制 .............................................................................. 152
扩展 ............................................................................................................. 153
版本化 ......................................................................................................... 154
注册媒体类型与链接关系 .................................................................................. 157
媒体类型 ..................................................................................................... 157
链接关系类型 .............................................................................................. 159
设计与实现技巧 ................................................................................................. 162
Joshua Bloch 总结的良好的API 所具有的特征 .......................................... 162
Roy Fielding 的超文本API 准则 ................................................................. 163
Jon Postel 的健壮性原则 ............................................................................. 164
其他考虑 ..................................................................................................... 164
后记 ........................................................................... 167
附录A 参考文献 ........................................................ 169
附录B 补充阅读 ........................................................ 175
附录C Maze+XML 媒体类型 ...................................... 177
附录D Collection+JSON 媒体类型 ............................. 185
附录E 微博HTML 语义配置 ...................................... 197
附录F IANA 媒体类型注册文档 .................................. 207
附录G IETF 链接关系互联网草案............................... 209
附录H 本书所用源代码、软件及其安装说明 ............... 215__
《老昆明》内容简介:本书图文并茂,内容丰富,全面展示了民国老昆明的名胜古迹、风土人情、美味珍馐、文化百态、烽火岁月、娱乐休
《作家榜名著:你一定爱读的极简中国史》内容简介:本书是一本国学入门读物,曹伯韩以浅显通畅的文字,对中国的语言文字、金石考证
在学校、学院中,在工业、零售业与大众媒体领域中,设计这个话题,变得越来越热门。数年来在英国政府不温不火的支持中,也大大提
《Ruby设计模式》是一本关于设计模式方面的重点书籍。《Ruby设计模式》以通俗易懂的方式介绍了Ruby设计模式,主要包括Ruby概述、
《中国人力资源和社会保障发展研究》内容简介:本书立足于新中国成立以来人力资源和社会保障的历史发展脉络,系统梳理中国企业人力
《互联网企业安全高级指南》内容简介:本书由业内多位顶级安全专家亲力打造,分享了他们十多年的安全行业经验。从技术到管理,从生
《综合评价招生》内容简介:当下,我国高校招生已经从最初的单一的裸分录取方式逐渐发展为多元化的录取路径。而随着新高考改革的不
《PyTorch深度学习实战》内容简介:本书帮助读者快速深入深度学习。在过去的几年里,我们看到深度学习成了新的动力。它从学术界一路
计算证劵理论 内容简介 本书采用类似固体力学的确定性模型、原理、理论和方法,对证券(股票、期货、期权等)走势进行定量分析。全书分6章。首先介绍计算证券构思,计算...
《人脉是设计出来的:实战篇》内容简介:我们迫切渴望成功,我们更加明白——在这个世界上,没有人不努力就能办成事,也没有人仅仅
本书筛选出中国电影名片近百部,分设背景搜索、故事梗概、精彩场面、欣赏指导、专家建议五个栏目,多角度地介绍、分析、欣赏、评
细说AJAX与jQuery 本书特色 本书主要学习JavaScript中两个**的知识点:*个为AJAX,它是客户端JavaScript与后端服务器进行交流的一...
《中国建筑艺术史》内容简介:《中国建筑艺术史》是一部中国建筑史简史。《中国建筑艺术史》作者认为,人类建筑思想的进步以及建筑
精通数据科学:从线性回归到深度学习 本书特色 本书全面讲解了数据科学的相关知识,从统计分析学到机器学习、深度学习中用到的算法及模型,借鉴经济学视角给出模型的相关...
《因为喜欢,可迎万难:张爱玲传》内容简介:张爱玲,理解生活的深刻,动荡的人生染着轻盈的落寞,是一个可以与世界“顶级”小说家
《玩的就是调侃:打造你的金牌博客》按博客的主要内容,将纷繁复杂的博客群体划分为五大类,一一介绍,每章通过对该类博客总体情况
本书探讨了针对Ajax、JavaScript和基于表现状态传输(RepresentationalStateTransfer,REST)的Webservice,以...
ThisisacomprehensiveaccountofthesemanticsandtheimplementationofthewholeLispfamil...
《教你轻松学电商之淘宝海报设计》内容简介:电商海报是目前进行电商宣传的一种常用的形式,是消费者了解电商产品的一种主要的方式
Iftheusualpatchworkofwebdevelopmenttoolsandlanguagesjustisntcuttingitforyou,youn...