本发明专利技术公开了一种使用通用协议进行通信的方法
【技术实现步骤摘要】
一种使用通用协议进行通信的方法与装置
[0001]本申请实施例涉及计算机科学领域,特别涉及一种使用通用协议进行通信的方法
、
装置
、
计算设备与计算机可读存储介质
。
技术介绍
[0002]现有技术中服务器端与客户端在进行网络通信时为了减少双方开发的沟通成本,需要双方事先约定好协议字段
。
为了提高开发效率,通常采用第三方的协议工具比如
Protobuf、Thrift
等,然后将程序中的数据序列化成二进制进行传输
。
不过这些工具无法根据需求将数据序列化成指定或定制的格式,例如
Json、MsgPack
等
。
为了解决这一问题,用户不得不另外定义一套协议满足定制化需求,增加了开发成本
。
因此需要一种通用的协议和使用方法,能够根据用户的需求高效生成各种格式的通信数据
。
技术实现思路
[0003]基于上述技术难题,本专利技术旨在研发出一种使用通用协议进行通信的方法
、
装置
、
计算设备与计算机可读存储介质
。
[0004]根据本实施例的第一方面,提供了一种使用通用协议进行通信的方法,包括:
[0005]生成自定义结构化数据;
[0006]解析所述自定义结构化数据,生成第一数据节点;
[0007]对所述第一数据节点进行解析,生成所述自定义结构化数据的元数据;
[0008]根据所述元数据生成目标语言代码
。
[0009]根据本实施例的第二方面,提供了一种使用通用协议进行通信的装置,包括:
[0010]编辑单元,用于生成自定义结构化数据;
[0011]第一解析单元,用于解析所述自定义结构化数据,生成第一数据节点;
[0012]第二解析单元,用于对所述第一数据节点进行解析,生成所述自定义结构化数据的元数据;
[0013]生成单元,用于根据所述元数据生成目标语言代码
。
[0014]根据本申请实施例的第三方面,提供了一种计算机可读存储介质,其存储有计算机指令,该指令被处理器执行时实现前述一种使用通用协议进行通信的方法的步骤
。
[0015]根据本申请实施例的第四方面,提供了一种计算设备,包括存储器
、
处理器及存储在存储器上并可在处理器上运行的计算机指令,所述处理器执行所述指令时实现上述一种使用通用协议进行通信的方法的步骤
。
[0016]通过本申请的实施例,实现了复杂系统间的多种序列化数据传输的需要,首先生成了自定义结构化数据,在自定义的结构化数据中根据需求定义各种类型的数据结构,突破了不同开发语言之间的约束;进一步将自定义结构化数据转换成节点树,并对节点树解析生成了用于详细描述结构化数据的元数据
。
根据元数据,使得结构化数据可以灵活地转化为多种不同的序列化格式并生成相关的序列化代码;另一方面,元数据更加容易兼容其
他协议格式,从而很好地实现了一种通用的通信方法
。
附图说明
[0017]图1是本申请实施例提供的计算设备的结构框图;
[0018]图2是本申请实施例提供的一种使用通用协议进行通信的方法的流程图;
[0019]图3是本申请实施例提供的自定义结构化数据的示意图;
[0020]图4是本申请实施例提供的自定义结构化数据的另一示意图;
[0021]图5是本申请实施例提供的一种使用通用协议进行通信的装置的结构框图
。
具体实施方式
[0022]为使本专利技术的目的
、
技术方案和优点更加清楚明了,下面结合具体实施方式并参照附图,对本专利技术进一步详细说明
。
应该理解,这些描述只是示例性的,而并非要限制本专利技术的范围
。
此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本专利技术的概念
。
[0023]在下面的描述中阐述了很多具体细节以便于充分理解本申请
。
但是本申请能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本申请内涵的情况下做类似推广,因此本申请不受下面公开的具体实施的限制
。
[0024]在本申请一个或多个实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请一个或多个实施例
。
在本申请一个或多个实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义
。
还应当理解,本申请一个或多个实施例中使用的术语“和
/
或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合
。
[0025]应当理解,尽管在本申请一个或多个实施例中可能采用术语第一
、
第二等来描述各种信息,但这些信息不应限于这些术语
。
这些术语仅用来将同一类型的信息彼此区分开
。
例如,在不脱离本申请一个或多个实施例范围的情况下,第一也可以被称为第二,类似地,第二也可以被称为第一
。
取决于语境,如在此所使用的词语“如果”可以被解释成为“响应于确定”。
[0026]图1示出了根据本申请一实施例的计算设备
100
的结构框图
。
该计算设备
100
的部件包括但不限于存储器
110
和处理器
120。
处理器
120
与存储器
110
通过总线
130
相连接,数据库
150
用于保存数据
。
[0027]计算设备
100
还包括接入设备
140
,接入设备
140
使得计算设备
100
能够经由一个或多个网络
160
通信
。
这些网络的示例包括公用交换电话网
(PSTN)、
局域网
(LAN)、
广域网
(WAN)、
个域网
(PAN)
或诸如因特网的通信网络的组合
。
接入设备
140
可以包括有线或无线的任何类型的网络接口
(
例如,网络接口卡
(NIC))
中的一个或多个,诸如
IEEE802.11
无线局域网
(WLAN)
无线接口
、
全球微波互联接入
(Wi
‑
MAX)
接口
、
以太网接口
、
通用串行总线
(USB)
接口
、
蜂窝网络接口
、
...
【技术保护点】
【技术特征摘要】
1.
一种使用通用协议进行通信的方法,其特征在于,包括以下步骤:生成自定义结构化数据;解析所述自定义结构化数据,生成第一数据节点;对所述第一数据节点进行解析,生成所述自定义结构化数据的元数据;根据所述元数据生成目标语言代码
。2.
根据权利要求1所述方法,其中,所述生成自定义结构化数据包括:在数据文件中自定义数据结构,所述自定义数据结构包括自定义数据类型和自定义容器类型
。3.
根据权利要求1所述方法,其中,解析所述自定义结构化数据,生成第一数据节点包括:为每个数据文件生成一棵节点树,将所述数据文件中的各个数据结构块转换为节点树上的多个节点;所述节点包括标识符和节点名称,所述标识符用于标识数据结构块的类型,所述节点名称用于标识数据结构块的名称;所述节点还包括所述数据结构块的属性或字段
。4.
根据权利要求1所述方法,其中,对所述第一数据节点进行解析,生成所述自定义结构化数据的元数据包括:遍历第一数据节点,根据节点的结构生成自定义结构化数据的元数据
。5.
根据...
【专利技术属性】
技术研发人员:扈红柯,郭子文,李建良,乐坚强,何雨泉,林逸,杨东,杨利华,袁冠鹏,
申请(专利权)人:北京云游互动网络科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。