小苏子
小苏子PDF在线图书

JSON必知必会 内容简介

JSON必知必会 内容简介

JSON必知必会 目录

JSON必知必会 精彩文摘

JSON(JavaScript对象表示法)是一种流行的数据交换格式,从Web API和服务端编程语言到NoSQL数据库和客户端框架,都有JSON的身影。在不同平台间传递数据方面,JSON已成为XML强有力的替代者。本书将帮助忙碌的IT从业者快速学习JSON,并且深入理解如何将其用在自己的项目中。书中对JSON的语法、数据类型、格式和安全问题等进行了全面的解读,并且展示了JSON在实际生活中的诸多用途。只要你略有编程经验并且对HTML和JavaScript有基本的了解,就可以轻松阅读本书。- 了解为什么JSON语法中使用名称-值对表示数据- 掌握JSON中的对象、字符串、数字和数组等数据类型- 探讨如何解决常见的安全问题- 学习使用JSON模式来验证数据格式是否正确- 审视浏览器、Web API和JSON之间的关系- 理解服务端如何请求和创建数据- 探索如何在jQuery及其他客户端框架中使用JSON- 分析为何CouchDB NoSQL数据库使用JSON存储数据越来越多的IT 从业者需要学习或了解JSON。本书即针对这一现状,围绕JSON 这一主题的核心展开讲解,首先介绍JSON 语法、语法验证、数据类型、模式验证、安全问题,再讲解JSON 作为数据交换格式所扮演的种种角色,还涉及jQuery、AngularJS 以及CouchDB 等技术的进阶介绍,并给出了大量代码示例,是一本让读者快速透彻地了解JSON 的指南。第1章 什么是JSON1.1 JSON是一种数据交换格式1.2 JSON独立于编程语言1.3 专业术语和概念第2章 JSON语法2.1 JSON基于JavaScript对象字面量2.2 名称-值对2.3 正确的JSON语法2.4 语法验证2.5 JSON文件2.6 JSON的媒体类型2.7 专业术语和概念第3章 JSON的数据类型3.1 数据类型简介3.2 JSON 中的数据类型3.3 JSON 中的对象数据类型3.4 JSON中的字符串类型3.5 JSON 中的数字类型3.6 JSON 中的布尔类型3.7 JSON中的null类型3.8 JSON中的数组类型3.9 专业术语和概念第4章 JSON Schema4.1 验证的魔力4.2 JSON Schema简介4.3 专业术语和概念第5章 JSON中的安全问题5.1 客户端和服务端的关系5.2 跨站请求伪造5.3 注入攻击5.3.1 跨站脚本攻击5.3.2 安全漏洞:决策上的失误5.4 专业术语和概念第6章 JavaScript中的XML.HttpRequest与Web API6.1 Web API6.2 JavaScript中的XMLHttpRequest对象6.3 混乱的关系与共享的规则6.3.1 跨域资源共享6.3.2 JSON-P6.4 专业术语和概念第7章 JSON与客户端框架7.1 jQuery和JSON7.2 AngularJS7.3 专业术语和概念第8章 JSON与NoSQL8.1 CouchDB数据库8.2 CouchDB API8.3 专业术语和概念第9章 服务端的JSON9.1 序列化、反序列化与请求JSON9.1.1 ASP.NET9.1.2 PHP9.2 发送JSON HTTP请求的其他方式9.2.1 Ruby on Rails9.2.2 Node.js9.2.3 Java9.3 专业术语和概念第10章 总结10.1 作为配置文件的JSON10.2 结语第 1 章 什么是 JSON在深入讨论 JSON 之前,先让我们对它有一个感性的认识。宏观上看,JSON 是一种轻量的数据格式,在各种地方传递数据。如果单用眼睛看,JSON 里的数据是被保存在花括号({})中的,而如果从用途上进一步分析,最终我们会得出结论:JSON 是一种数据交换格式。1.1 JSON是一种数据交换格式数据交换格式是一种在不同平台间传递数据的文本格式。除 JSON 外,你也可能听说过 XML 这种数据交换格式。像 XML 和 JSON 这样的数据交换格式非常重要,我们需要它们来实现不同系统间的数据交换。举个例子,假如有这样一个世界,它由数百个散布在海洋中的小岛所组成。每个海岛都是相互独立的,并有自己独特的语言和习俗。这些岛上都有许多商人,他们需要在海岛间进行长途航行。这种对外贸易是所有海岛经济必需的组成部分,也有助于提高岛民的生活水平。而这一切的实现都要归功于那些训练有素的送信海鸥。这些海鸥在岛间飞行,携带着需求量最大的货物的信息。商人根据这些信息来决定他们的下一站,以及在长途航行前应储备哪些货物。也正是凭借这些关键的数据,各个海岛间才可以互通有无,共同繁荣。别忘了,每个海岛的语言都不同。如果这些信息用各种不同的语言编写,那么每个海岛都要花上一大笔钱来研究各种语言,并组建一支翻译团队。这既昂贵,又费时。不过岛民们十分聪明,他们决定统一使用一种语言,用一种标准的数据格式来传达贸易数据。这样,每个海岛都只需雇用一个懂得这一数据格式的翻译就好了,由他们来解读海鸥带来的贸易报告。这个海岛的例子其实就映射出了我们在实际生活中所使用的技术。我们的生活中充满了各种系统,它们所使用的语言和架构都不尽相同。而对于使用这些系统的企业和组织来说,它们之间相互通信的能力又是不可或缺的。但如果每一个系统都必须有一个专门针对其他所有系统的数据组织形式的翻译组件,那么它们之间的交流便要消耗许多时间和资源,这显然是不合理的。所以,这些系统间也需要一种单一的数据格式,以及单一的翻译组件。JSON 就是这样一种被许多系统用于交换数据的数据交换格式。有人把它叫作“数据交换格式”,甚至直接叫“数据格式”。在本书中,我们把 JSON 看作一种数据交换格式,是因为“交换”往往意味着两个或多个实体之间的相互交流。然而,不是所有的系统都支持使用 JSON 来交换数据。数据交换格式有很多,如前面提到的 XML(extensible markup language,可扩展性标记语言),可能早在 JSON 被发明前就已经在应用了。毕竟现实世界不会像例子中的海岛世界那么简单。有许多系统可以并还在使用像 XML 这样的格式,或是用表格和分隔符来表示数据的格式,如逗号分隔值(CSV)。现实中的每个“海岛”所选择的数据交换格式,也通常会和数据格式与“海岛”的风俗、语言、建筑结构等因素间的联系相挂钩。示例中的海岛世界里,每一个海岛都有它自己的语言。而海鸥所传送的报告上的数据所用的格式,是一种与语言无关的格式。这使得每个岛只需要雇用一个解释贸易报告的翻译即可。JSON 也一样,只不过数据不是通过海鸥传送的,而是通过网络中的 0 和 1 这样的信号传送。翻译自然也不是人,而是系统的一个解析器,用于将数据转换为系统可以读取的形式。

赞(0)
未经允许不得转载:小苏子图书 » JSON必知必会 内容简介