报文转换方法、装置、电子设备和计算机可读存储介质与流程

文档序号:35622888发布日期:2023-10-05 19:03阅读:46来源:国知局
报文转换方法、装置、电子设备和计算机可读存储介质与流程

本公开涉及计算机与互联网,尤其涉及一种报文转换方法及装置、电子设备和计算机可读存储介质。


背景技术:

1、本部分旨在为权利要求书中陈述的本公开的实施方式提供背景或上下文。此处的描述不因为包括在本部分中就承认是现有技术。

2、在相关技术中,系统间的交互逐渐呈结构化报文之势,特别是以json格式为代表的报文格式,目前已针对上述结构化报文形成一些标准化、对象化的报文解析和转换方案。但是目前的报文解析和转换方案,会使得系统之间逻辑耦合,当上游系统的相关报文内容发生变化后,下游系统要依赖上游系统的开发进行对应的系统升级才能完成报文的解析和转换。

3、因此,本技术要解决的技术问题是如何在报文解析转换时解除系统间的耦合关系。


技术实现思路

1、本公开的目的在于提供一种报文转换方法、装置、电子设备以及计算机可读存储介质,可以将上游设备发送的第一报文解析转换为符合第一设备需要的报文结构的报文。

2、本公开的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本公开的实践而习得。

3、本公开实施例提供了一种报文转换方法,包括:收符合第一报文结构的第一报文;获取所述第一报文结构对应的报文解析转换规则和所述第一设备对应的多个报文模板,所述报文解析转换规则包括至少一个解析规则条件;对所述第一报文进行遍历处理,在所述至少一个解析规则条件中确定所述第一报文满足的解析成功条件;在所述第一设备对应的多个报文模板中匹配出所述解析成功条件对应的第一报文模板,其中所述第一报文模板包括至少一个第一参数,所述第一报文模板符合第二报文结构,所述第一报文结构与所述第二报文结构不同;从所述第一报文中提取出各个第一参数对应的参数值;根据所述至少一个第一参数对应的参数值填充所述第一报文模板,以生成符合所述第二报文结构的第二报文。

4、在一些实施例中,所述方法还包括:对所述第一报文进行加载,以生成所述第一报文对应的报文二叉树,所述报文二叉树包括第一报文节点和第二报文节点;其中,所述报文解析转换规则包括所述第一报文对应业务的业务二叉树;其中,获取所述第一报文结构对应的报文解析转换规则,包括:获取所述第一报文对应的所述业务二叉树,所述业务二叉树包括第一业务节点和第二业务节点,其中每个业务节点中包括至少一个解析规则条件,所述业务二叉树的第一业务节点与所述报文二叉树中的第一报文节点对应,所述业务二叉树的第二业务节点与所述报文二叉树中的第二报文节点对应;其中,对所述第一报文进行遍历处理,在所述至少一个解析规则条件中确定所述第一报文满足的解析成功条件,包括:通过所述第一业务节点中的解析规则条件对所述第一报文节点中的报文数据进行遍历,以在所述第一报文节点对应的至少一个解析规则条件中确定所述第一报文节点中的数据满足的解析规则条件,作为第一解析成功条件;通过所述第二业务节点中的解析规则条件对所述第二报文节点中的报文数据进行遍历,以在所述第二报文节点对应的至少二个解析规则条件中确定所述第二报文节点中的数据满足的解析规则条件,作为第二解析成功条件;将所述第一解析成功条件和所述第二解析成功条件,作为所述第一报文满足的解析成功条件。

5、在一些实施例中,所述第一设备对应的多个报文模板包括第二报文模板,所述第二报文模板挂载在所述第二业务节点中,所述第二业务节点包括至少一个解析规则条件,所述第二业务节点中的至少一个解析规则条件包括第一解析规则条件;其中,通过所述第二业务节点中的解析规则条件对所述第二报文节点中的报文数据进行遍历,以在所述第二报文节点对应的至少二个解析规则条件中确定所述第二报文节点中的数据满足的解析规则条件,作为第二解析成功条件,包括:通过所述第二业务节点中的第一解析规则条件对所述第二报文节点中的报文数据进行遍历;如果所述第二报文节点中的报文数据满足所述第一解析规则条件,则确定所述第一解析规则条件是所述第二报文节点对应的解析成功条件,其中当确定所述第二报文节点中存在与第一解析规则条件匹配的数据后,停止对所述第二报文节点中的数据的遍历;其中,在所述第一设备对应的多个报文模板中匹配出所述解析成功条件对应的第一报文模板,包括:在所述第一设备对应的多个报文模板中匹配出与所述第一解析规则匹配的所述第一报文模板。

6、在一些实施例中,所述第二设备发出的所述第一报文是第一业务对应的报文,所述报文二叉树还包括第三报文节点,所述第一设备对应的多个报文模板还包括第三报文模板;其中,获取所述第一报文对应的所述业务二叉树,所述方法还包括:根据所述第一业务对应的第一报文结构和业务内容生成业务二叉树模板,所述业务二叉树模板包括第三业务节点,所述第三业务节点与所述第三报文节点对应,所述第三业务节点挂载有所述第三报文模板;根据所述第三报文模板和所述业务内容编制所述第三业务节点对应的至少一个解析规则条件;根据所述第三业务节点对应的至少一个解析规则条件生成所述第三业务节点对应的配置文件;将所述第三业务节点对应的配置文件配置在所述第一设备中,以便通过所述第一设备中的配置文件对所述第一报文对应的第三报文节点中的报文数据进行解析遍历。

7、在一些实施例中,所述第一参数对应的参数值是由第一子参数和第二子参数计算获得的;其中,从所述第一报文中提取出各个第一参数对应的参数值,包括:从所述第一报文提取出所述第一子参数对应的参数值;从所述第一报文中提取出所述第二子参数对应的参数值;对所述第一子参数对应的参数值和所述第二子参数对应的参数值进行参数计算,以获得所述第一参数对应的参数值。

8、在一些实施例中,所述第一参数对应的参数值是由第三子参数和外部参数计算获得的;其中,从所述第一报文中提取出各个第一参数对应的参数值,包括:从所述第一报文中提取出所述第三子参数对应的参数值;从所述第一设备的外部系统中获取所述外部参数对应的参数值;对所述第三子参数对应的参数值和所述外部参数对应的参数值进行参数计算,以获得所述第一参数对应的参数值。

9、在一些实施例中,所述第一报文模板与第二业务对应,所述第二业务通过第三设备处理;其中,所述方法还包括:确定所述第一报文模板对应的所述第二业务;确定处理所述第二业务的第三设备;将根据所述第一报文模板生成的所述第二报文发送给所述第三设备,以便所述第三设备对所述第二报文进行处理。

10、在一些实施例中,所述第一报文满足的解析成功条件包括第一解析成功条件和第二解析成功条件,其中所述第一解析成功条件用于匹配出所述第一报文模板,所述第一设备对应的多个报文模板还包括第二报文模板,所述第二报文模板符合第三报文结构,所述第三报文结构与所述第一报文结构不同;其中,所述方法还包括:在所述第一设备对应的多个报文模板中匹配出所述第二解析成功条件对应的所述第二报文模板,其中所述第二报文模板包括至少一个第二参数;从所述第二报文中提取出各个第二参数对应的参数值;根据所述至少一个第二参数对应的参数值填充所述第二报文模板,以生成符合所述第三报文结构的第三报文。

11、本公开实施例提供了一种报文转换装置,包括:第一报文接收模块、解析转换规则获取模块、遍历模块、第一报文模板匹配模块、第一参数值提取模块和填充模块。

12、其中,所述第一报文接收模块用于收符合第一报文结构的第一报文;所述解析转换规则获取模块可以用于获取所述第一报文结构对应的报文解析转换规则和所述第一设备对应的多个报文模板,所述报文解析转换规则包括至少一个解析规则条件;所述遍历模块可以用于对所述第一报文进行遍历处理,在所述至少一个解析规则条件中确定所述第一报文满足的解析成功条件;所述第一报文模板匹配模块可以用于在所述第一设备对应的多个报文模板中匹配出所述解析成功条件对应的第一报文模板,其中所述第一报文模板包括至少一个第一参数,所述第一报文模板符合第二报文结构,所述第一报文结构与所述第二报文结构不同;所述第一参数值提取模块可以用于从所述第一报文中提取出各个第一参数对应的参数值;所述填充模块可以用于根据所述至少一个第一参数对应的参数值填充所述第一报文模板,以生成符合所述第二报文结构的第二报文。

13、本公开实施例提出一种电子设备,该电子设备包括:存储器和处理器;所述存储器用于存储计算机程序指令;所述处理器调用所述存储器存储的所述计算机程序指令,用于实现上述任一项所述的报文转换方法。

14、本公开实施例提出一种计算机可读存储介质,其上存储有计算机程序指令,实现如上述任一项所述的报文转换方法。

15、本公开实施例提出一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机程序指令,该计算机程序指令存储在计算机可读存储介质中。从计算机可读存储介质读取该计算机程序指令,处理器执行该计算机程序指令,实现上述报文转换方法。

16、本公开实施例提供的报文转换方法、装置及电子设备和计算机可读存储介质,可以通过报文解析转换规则在第一设备对应的多个报文模板中确定第一报文匹配的第一报文模板,然后基于第一报文中的报文内容和第一报文模板生成符合第一设备需求的第二报文结构的第二报文。上述方法可以在下游设备与上游设备解耦的情况下,直接根据上游设备发送的第一报文解析转换生成符合下游设备需要的第二报文结构的第二报文。

17、应当理解的是,以上的一般描述和后文的细节描述仅是示例性的,并不能限制本公开。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1