赞
踩
JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成。它基于JavaScript语言的一个子集,但采用完全独立于语言的文本格式,这些特性使得JSON成为理想的数据交换语言。
优点如下:
数据序列化: 在发送数据前,将复杂的数据结构(如对象或数组)转换(序列化)为JSON格式的字符串。这一点在Web开发中尤为重要,因为HTTP协议通常用于传输文本数据。
跨语言交换: JSON格式独立于任何编程语言,大多数现代编程语言都提供了解析JSON的工具。这意味着一个用Java编写的服务器可以发送JSON数据给一个用JavaScript编写的Web客户端,客户端可以轻松理解和处理这些数据。
API接口: 许多Web API使用JSON格式来提供公共接口,让开发者可以访问其数据和功能。这促进了不同服务之间的集成,因为开发者只需了解如何处理JSON数据即可与这些API交互。
网络效率: 相比其他数据表示方式(如XML),JSON通常更加紧凑,可以减少网络传输的数据量,因此通信更快。
易于解析和生成: JSON的结构简单,易于编程语言解析和生成,这使得基于JSON的数据传输在编程中易于实现。
在C++的网络通信中,JSON是很普遍的,尤其是写接口时,接口文档里普遍是JSON,简洁易于理解,还在用XML的,基本是过时的技术了。
与http通信时,在HTTP请求的上下文中,https://mp.csdnmm.net/mp_blog/creation/editor/139330424
是一个URL(统一资源定位符),它指向一个特定的网络资源
根据URL,就可以定位到发送请求的位置,从而传递到body中附带json参数给网页,或者根据指定接口的参数获取网页中的数据。
在tcp通信中,没有URL这种指定,所以在传递的json数据中,需要添加一个方法,用于接收这个tcp的客户端/服务器解析,从而区分请求的方法
如在一个心跳检测接口中tcp发送的json参数如下:
- {
- "method": "heartbeatCheck",
- "timeStamp": 94877257833
- }
如在一个控灯接口中tcp发送的json参数如下:
- {
- "method": "ControlLight",
- "data": {
- "type": 1,
- "state": 0,
- "color": 2,
- "position": [
- {
- "row": 1,
- "column": 2
- }
- ]
- }
- }
然后相互通信的服务器/客户端就可以根据method这个参数,判断指定请求,就相当于URL了
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。