《使用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__
本书由腾讯公司视觉设计师编写,针对UI设计方向,从基础的知识出发,首先介绍了成为一名UI设计师需要做哪些方面准备工作。接下来
《唤醒孩子学习天赋》内容简介:1800000粉丝的育儿账号“科学小子钦”主理人 赵邈 力作 在陪伴中总结心得,在实践中改良方法 发掘孩
《马克思恩格斯法律思想研究》内容简介:本书分为上、下两编。上篇以马克思、恩格斯的重要著作文本为线索,梳理马克思和恩格斯运用
Likeanyothersoftwaresystem,Websitesgraduallyaccumulate"cruft"overtime.Theyslowdo...
CharlesPetzold从1984年开始编写个人计算机程序,从1985年开始编写MicrososftWindows程序。他在《MicrosoftSystem...
《中国大运河百问》内容简介:姜师立著的本书是大运河申遗成功后首部全面系统介绍以大运河为核心的历史文化资源的书籍,对运河沿线
《工业产品设计手绘典型实例(第3版)》内容简介:本书共12章,分为3个层次,对应教学的需要,第1~3章是基础部分,主要讲述线条、
《手到病自除2:常见病反射区自愈疗法(下)(2022版)》内容简介:本书是《手到病自除(增订精华版)》系列第二册,书中完整介绍了
本书系统地阐述了宏观电磁场和电磁波的基本规律、基本计算方法及其应用。全书共分8章:矢量分析、电磁场基本方程、静电场及其边值
Abasicproblemincomputervisionistounderstandthestructureofarealworldscenegivensev...
《电子工程师自学速成:设计篇》内容简介:“电子工程师自学速成”丛书分为“入门篇”、“提高篇”和“设计篇”共3本。本书为“设计
《雨鼓》内容简介:15世纪,奥斯曼帝国出兵围攻阿尔巴尼亚的城堡,帕夏率领千军万马驻扎城脚,千奇百怪的攻城方式轮番上演,百转千
《深度学习实践:计算机视觉》内容简介:本书主要介绍了深度学习在计算机视觉方面的应用及工程实践,以Python 3为开发语言,并结合
社会调查数据管理-基于Stata 14管理CGSS数据-精装版 本书特色 这是一本关于社会调查数据管理的实务操作手册,以国内综合性、长期性的调查数据&mdash...
《别输在不懂营销上》内容简介:本书按照推销的进程来安排顺序,从塑造推销员的基本素质说开去,将接近客户、寻找和开发客户、产品介
本书是国际算法大师乌迪·曼博(UdiManber)博士撰写的一本享有盛誉的著作。全书共分12章:第1章到第4章为介绍性内容,涉及数学归
互動式設計:數位科技改變了現代生活所對應的一切,範疇廣及娛樂乃至工具配備。而對於數位科技商品的設計者而言,他們要創造的標
本书能满足读者全面学习最新的Hadoop技术及其相关技术(Hive、HBase等)的需求,是一本系统且极具实践指导意义的Hadoop工具书和参
《德国哲学(2016年下半年卷)》内容简介:本书是由湖北大学哲学学院主办、湖北大学德国哲学研究所协办的专门研究德国哲学及相关问
基于模型的设计及其嵌入式实现 本书特色 《基于模型的设计及其嵌入式实现》特点:《基于模型的设计及其嵌入式实现》是国内**部系统介绍基于模型设计的著作,主要内容由...