《使用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__
《数字化魔方:数字化转型的创新思维模式》内容简介:何为数字化转型?进行数字化转型需要做什么,具体应该怎么做?如何评估组织能
《海蒂育儿大百科:0~1岁(2023版)》内容简介:宝宝不会带着说明书来到这个世界,新手父母难免遇到各种问题。这时,一部专业可靠的
大数据下并行知识约简与知识获取 本书特色 本书针对大数据的数据体量大、数据类型繁多、处理速度快、价值密度高等特点,以粒计算方法为理论基础,以经典粗糙集模型和区间...
神经网络控制已发展成为“智能控制”的一个新的分支,属先进控制技术,为解决复杂的非线性、不确定、不确知系统的控制问题,开辟
中文版Photoshop标准教程 本书特色 《中文版photoshop标准教程》:专家编著,依纲编写:《中文版photoshop标准教程》由国内一线photos...
21世纪高职高专系列规划教材:计算机网络技术 本书特色 本书全面系统地介绍了组建计算机网络系统的软硬件技术及有关Internet和Intranet技术。全书共分...
《每个妈妈都是创意家》内容简介:本书从“艺术培养”“母女关系”“哲学思维”“旅行与性格”“职业培养”等方面,展示了作者在20
本书讲述如何用Python框架Django构建出强大的Web解决方案,本书讲解了使用新的Django1.0版的各种主要特性所需要的技术、工具以及
内容简介:MongoDB是为处理大数据而生的一款面向文档的数据库,由10gen公司开发和维护。本书作者KyleBanker曾在该公司负责MongoD
《2020区块链漫游指南》内容简介:本书是一本区块链技术的学习指南。本书各章命名为“星系”,共分为6个星系,围绕区块链概念及其技
《冯唐成事心法》内容简介:他是热爱文艺的管理专家,是精通麦肯锡与曾国藩成事学的商业领袖,是医学博士出身的投资人。10年麦肯锡
ProgrammingontheWebtodaycaninvolveanyofseveraltechnologies,buttheCommonGatewayIn...
《物理化学》是教育部“高等教育面向21世纪教学内容和课程体系改革计划”的研究成果,是面向21世纪课程教材。《物理化学》共5篇2
《长牛:新时代股市运行逻辑》内容简介:本书立足于当下的资本市场,对底层逻辑的深刻变化做出了剖析,并对未来运行趋势做出了整体
《Web2.0高级编程》首先通过一个Web2.0应用演示了服务器和浏览器之间的交互过程,让读者对《Web2.0高级编程》中介绍的技术在Web2
《王牌战机图鉴(白金版)》内容简介:本书精心选取了世界各国空军装备的近百种经典战机。战斗机、轰炸机、反潜战机、武装直升机、
DigitalCommunicationReceiversSynchronization,ChannelEstimation,andSignalProcessi...
互联网使世界成为一个大家庭,而网站便已成为当下国际文化经济交流的主要平台和交互窗口。与此同时优秀的创作人、设计师、艺术家
《未来机器人畅想》内容简介:经过几十年的努力、实验和改进,工程师已经优化了复杂的人机协作关系,使商业航空运输系统为我们带来
WithcontributionsbyMichaelAshikhmin,MichaelGleicher,NatyHoffman,GarrettJohnson,T...