XML数据复制架构方面的表示更出色。XML文档中包含的信息更丰富,Hazlewood:很显然。而且其中的数据类型划分也更为高效。XML非常适合处置数据交换任务,但糟糕的易用性往往令开发人员望而却步。JSON内容适合直接阅读,XML设计方面则更为复杂。JSON语法简单易懂。说起语言设计,JSON中的核心元素非常有限,全部开发效果都以此为基础。由于其出色的简单特性,能够轻松对其加以操控及理解。不过在设备消耗信息方面,JSON表示远不如XMLXML更适合设备直接处置。
但打造一套既运作良好又稳定可靠的API却没那么容易,创建一套可通过Web进行访问的应用顺序编程接口并不困难。Stormpath公司首席技术官LeHazlewoodJavaOn2013大会上表示。为了顺应与会观众们强烈呼声,Hazlewood于本周二重返JavaOn舞台、向大家介绍了如何利用JA X-RS与Jersei创建优秀的REST+JSONAPI
即使其后端机制实际相当复杂,一款出色的具象状态传输(简称RESTAPI从外表上看应该很简单。Hazlewood介绍环节之前的记者采访中指出。如果一款API专注重点在于收集信息并为各条信息提供各自独立的代表,那么只要削减API中的收集及搜索机制(而非罗列所有已经采用的对象)就能获得一款简洁而出色的方案,直观而绝不复杂。
Hazlewood深入探讨了API最佳实践、RESTAPI优势与劣势以及JavaScriptObjectNatat简称JSON等话题。问答环节中。
为什么Java开发人员乐于尝试RESTAPI
交换数据以及创立、读取、更新与删除数据的方式已经被确定下来。互不相干的设备中创建即读即删信息时,LeHazlewood:REST一套以现有HTTP为基础建立起来的架构风格。HTTP规范当中。REST能够负责决定特定情况该如何处理。
因此我可以在Linux设备、Window设备与苹果Mac设备之间进行通信。总之,这正是REST主要作用;负责此类操作在互不相干的设备间执行时该如何处理。由于REST以HTTP为基础。REST无需局限于特定平台或者供应商类型—由于HTTP无处不在因此REST也能够广泛起效。所有编程语言,包括PythonPHPJava以及C#都能够与REST并行协作。
REST往往由于自身的迷惑性而被看得过于简单。每个人都自认为了解HTTP因为这正是Web浏览器的外表方式。技术人员了解HTTP协议、GIT以及POST因为他已经以Web形式与之接触多年。而由于REST使用HTTP协议,从各个方面来说。开发人员会习惯性地低估其实际复杂性。事实上,如今的REST服务已经远远超越XML过去一直搭配SOA P即简单对象访问协议)范畴。
但其使用方法还缺乏正式的规范或者规范。要了解这种风格,Hazlewood:这正是来到这里向大家进行介绍的原因。REST一种架构风格。需要为其添加注释,否则不同使用者对于功能的理解与效果会出现一定水平的偏差。这是因为REST并非一套能够在设备之间直接照搬的规范,而且人为因素的介入也会引发歧义。这样的情况下,要正确或者轻松使用REST将变得充满困难。REST与JSON都很简单,HTTP也很简单,但在将这几种机制结合起以解决特定问题时,大家会发现自己很难找到既定的幼稚指导。
还有其它什么理由吗?您在JavaOn介绍环节中建议将JSON与REST相结合。
Hazlewood:REST与JSON提供了更为人性化的数据表示方式;数据看起来不再像XML格式那样拥挤;更便于我直接用肉眼查看。而这正是JSON被广泛采用的真正原因。
内容就是字符串、数字、空、非空。允许大家以非常简单的格式通过少量元数据表示复杂的情况。能够轻松将其使用在多种不同环境之下。易于机器解析,JSON一种语法规则。简单概括。也同样适合人们直接阅读。
一旦涉及网页或者直观用户界面,JavaScript目前世界上最具影响力的重要编程语言之一。即使是主要由JavaPython或者C#编写的应用顺序中。那么出场解围的也必然是JavaScriptJSON与JavaScript完全兼容,任何拥有JavaScript编程经验的技术人员都能轻松掌握JSON如果大家已经跟JavaScript打过交道,那么将其与API相整合也绝非难事。如果API返回JSON且大家已经利用JavaScript编写代码,那么编程语言自身就会了解如何阐释来自服务器的数据。JSON借助人气极盛的JavaScript处置数据交换(而不仅是写入软件)任务。