学习JSON:便携式数据传输入门

披露: 您的支持有助于保持网站的正常运行!我们会为此页面上推荐的某些服务收取推荐费.


JSON,简写为 Ĵava小号cri Ø对象 ñOT最初是一种在浏览器和Web服务器之间传输JavaScript对象的方式。但是,今天的名称有点用词不当,因为JSON几乎可以用任何流行的编程语言用作数据传输格式。.

JSON已成为格式化用于交互式Web应用程序的数据的默认选择。它的语法非常轻巧,非常易于学习,阅读和编​​写.

JSON的历史

JSON不是发明的,而是被“发现”的。虽然他不是第一个使用JSON的人,但道格拉斯·克罗克福德(Douglas Crockford)通常是因为发现了这种格式而闻名,因为他是第一个在2001年左右普及并指定使用它的人。开发人员Crockford透露他早在1996年就发现Netscape使用JSON.

在发现之前,JSON作为现有浏览器功能的意外副产品存在。软件公司State Software的共同创始人Crockford正在开发AJAX Web应用程序框架。但是,State Software需要找到一种无需依赖Flash插件或Java小程序即可实现浏览器与服务器之间实时双向通信的方法。正是这种需求推动了JSON发现的背后.

最初,Crockford认为JSON是JavaScript语言的一部分,并因此将其命名。但是,由于JSON仅包含逗号,花括号,方括号和数据,因此可以通过任何编程语言轻松地将其解析为数组或对象。由于语言的独立性,JSON于2013年作为独立的ECMA标准(ECMA-404)建立,并于一年后被Internet工程任务组(IETF)征求意见书(RFC)7159扩展和引用.

今天如何使用JSON

JSON是在Internet上传输数据的默认选择。由于其简单性和语言独立性,它已经超过了XML和CSV等格式。现代JSON实现通常分为两类之一:

  • Web服务API使用JSON格式使数据可用于第三方应用程序.
  • AJAX交互通常使用JSON在服务器和访问者的浏览器之间传递数据.

在这两种情况下,都必须使用JavaScript对JSON进行客户端操作,以呈现数据。此外,如果数据将用于在Web服务器上执行任何操作,则服务器端编程语言和特定于语言的JSON库将在服务器上完成工作.

JSON数据结构

JSON数据被格式化为两个数据结构,这些结构在所有现代编程语言中普遍使用:

  • JSON 数组 是值列表.
  • JSON 宾语 是名称/值对的集合.

这看起来似乎很简单,但是当您考虑到数组和对象中的值可以包含数字,布尔值,字符串,空值甚至嵌套的数组和对象时,事情就变得更加复杂了。另一方面,名称只能是字符串.

JSON数据示例

定义很有用,但更有用的是查看一些JSON数据。让我们看一个简单的数组.

[ "红色", "绿色", "蓝色", 7]

该数组包含四个值:三个字符串和一个数字。让我们用一个简单的对象来解决问题.

{
"事件": "早餐",
"位置": "蒂芙尼的",
"记得":真,
"格式": "电影",
"两者都喜欢":真,
"共通的地方":1
}

好的,现在事情变得越来越有趣了。在此对象中,我们有六个名称/值对。每个名称都是一个字符串,值包括三个字符串,两个布尔值和一个数字.

我们还有时间再举一个例子。在这种情况下,具有嵌套数组和对象的更复杂的对象.

{
"内容管理系统" :[
{
"名称": "WordPress的",
"市场份额":58.9
},
{
"名称": "Joomla",
"市场份额":6.1
},
{
"名称": "Drupal",
"市场份额":4.9
}
]
}

我们从使用名称的单个名称/值对开始 "内容管理系统". 该值是一个有点复杂的数组(由于方括号,我们知道这是一个数组),其中包含对象中的其余数据。但是,数组中的每个值不是嵌套简单的值,而是嵌套的名称/值对(也称为对象,并由花括号标识).

换句话说,这是一个包含对象数组的JSON对象。得到它了?好.

资源资源

所以现在您知道什么是JSON,但是也许您想学习如何实际使用JSON。如果是这样,那么您很幸运。以下是网络必须提供的一些最佳的JSON资源:

  • Mozilla开发人员网络JSON文档是JSON语法和客户端JSON交互的完整概述。.
  • W3Schools提供了基本的JSON简介,它演示了JSON语法并将XML与JSON进行比较.
  • JSON是什么:Secret Geek(又名不太秘密的Leon Bambrick)编写的3分钟JSON教程(3 Minute JSON Tutorial)是JSON语法,用法及其与XML相似之处的速成课程。.
  • JSON.org是JSON的官方网站,其中包含按编程语言组织的JSON实现的广泛列表.

JSON和您喜欢的语言

正如我们不止一次提到的那样,JSON数据几乎可以与任何编程语言一起使用。我们找到了一些教程,可以帮助您开始使用JSON进行Java,PHP或.NET框架的Web开发.

  • 通过阅读Java API进行JSON处理,学习如何将JSON与Java结合使用:Oracle技术网提供的JSON简介.
  • Jenkov.com的Java JSON教程涵盖了三个流行的Java JSON解析器,并链接到同一作者的另一个教程,该教程将教您如何构建自己的JSON解析器.
  • 通过参考PHP手册的JSON部分,将JSON与PHP结合使用。从PHP 5.2开始,JSON已捆绑在PHP核心中。因此,在PHP应用程序中使用JSON就像熟悉该语言内置的各种JSON函数一样简单。.
  • 如果您想掌握PHP中JSON的使用,请看一下像PHP中的老板一样处理JSON:深入探讨高级技术的教程.
  • 通过从Microsoft开发人员网络参考JavaScript和.NET中的JavaScript对象表示法(JSON)简介,将JSON应用于.NET框架。.

图书

如果您更喜欢打印和装订形式的学历,以下是金钱可以买到的三种最佳JSON文本:

  • JavaScript对象表示法简介:Lindsay Bassett撰写的JSON重点指南(2015)是JSON实施的简要指南,涵盖Web API,服务器端语言库和客户端JSON操作.
  • Tom Marrs撰写的JSON at Work(2016)将向您展示如何使用JavaScript,jQuery,HTML5,Ruby和Java使用JSON.
  • Ben Smith的Beginning JSON(2015)说它涵盖了“开始” JSON,但事实是,本文涵盖的内容远远超出了基础知识.

摘要

JSON是一种简洁的语言独立格式,用于在Web服务器和浏览器之间传输数据。这是现代AJAX驱动的交互式Web应用程序和Web服务API的首选数据传输格式。幸运的是,JSON也很容易上手,并且几乎可以肯定在您喜欢的Web开发环境中可以正常工作.

进一步阅读和资源

我们有更多与编码和网站开发有关的指南,教程和信息图:

  • XML资源:曾经被认为可以替代HTML,但它仍然是一种非常流行的数据存储和传输语言.
  • PHP简介和资源:有原因的世界上最流行的服务器端编程语言.
  • ASP.NET资源:本指南将指导您使用Microsoft的.NET框架来创建网页.

您应该学习什么代码?

对应该学习哪种编程语言感到困惑?查看我们的信息图,您应该学习什么代码?它不仅讨论了语言的不同方面,还回答了一些重要问题,例如:“我将以编程为生赚多少钱?”

您应该学习什么代码?
您应该学习什么代码?

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map