CN112383533B - 报文格式转换方法及装置 - Google Patents
报文格式转换方法及装置 Download PDFInfo
- Publication number
- CN112383533B CN112383533B CN202011247175.4A CN202011247175A CN112383533B CN 112383533 B CN112383533 B CN 112383533B CN 202011247175 A CN202011247175 A CN 202011247175A CN 112383533 B CN112383533 B CN 112383533B
- Authority
- CN
- China
- Prior art keywords
- message
- format
- target
- item
- service
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/08—Protocols for interworking; Protocol conversion
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/06—Notations for structuring of protocol data, e.g. abstract syntax notation one [ASN.1]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
- Communication Control (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明提供了一种报文格式转换方法及装置,可以应用于网关,该方法包括:当接收到源报文***发送的业务报文时,基于业务报文的报文格式,确定业务报文的各个报文项;按每个报文项对应的解析方式对每个报文项进行解析,获得每个报文项的报文信息,并将每个报文项的报文信息依次存放至预先建立的上下文;确定目标应用***对应的目标报文格式;按目标报文格式对上下文中存放的报文信息进行组包,得到目标报文格式对应的目标应用报文;将目标应用报文发送至所述目标应用***。应用本发明提供的报文格式转换方法,通过网关进行不同***间的报文的格式转换,使得各个***可以无需关注报文的格式转换,降低了***的复杂度,提高了报文格式转换的效率。
Description
技术领域
本发明涉及报文处理技术领域,特别涉及一种报文格式转换方法及装置。
背景技术
随着计算机技术的发展,为了满足日益增长的业务需求,各种应用***的数量也在不断增加,在进行各种业务处理的过程中,通常需要多个应用***进行对接以及数据共享,应用***之间的数据交换往往是以报文为基础,报文定义了应用***间数据交换的内容及格式,通过报文进行数据交换,能够使得各个应用***间协调工作,从而能够完成相应的业务。
现有技术中,由于不同应用***所提供数据交换的报文的格式不同,因此,接收报文的应用***在接收到其他不同的各个应用***发送的报文时,通常需要对接收到的不同格式的报文分别进行相应的格式转换,以得到格式适用的报文,然而,这样会造成接收报文的应用***的报文处理逻辑繁杂,从而导致***的复杂度高,维护难度大。
发明内容
本发明所要解决的技术问题是提供一种报文格式转换方法,能够简化应用***的报文处理逻辑,降低应用***的复杂度。
本发明还提供了一种报文格式转换装置,用以保证上述方法在实际中的实现及应用。
一种报文格式转换方法,应用于网关,所述方法包括:
当接收到预置的源报文***发送的业务报文时,获取所述业务报文的报文格式;
基于所述报文格式确定所述业务报文的各个报文项;
按每个所述报文项对应的解析方式对每个所述报文项进行解析,获得每个报文项的报文信息,并将每个所述报文项的报文信息依次存放至预先建立的上下文;
确定预置的目标应用***对应的目标报文格式,所述目标应用***为处理所述业务报文对应的业务的应用***;
按所述目标报文格式对所述上下文中存放的报文信息进行组包,得到所述目标报文格式对应的目标应用报文;
将所述目标应用报文发送至所述目标应用***。
上述的方法,可选的,所述获取所述业务报文的报文格式,包括:
依据所述源报文***的***标识获取所述源报文***的报文格式定义文件;
读取所述报文格式定义文件,获得所述业务报文的报文格式。
上述的方法,可选的,所述按每个所述报文项对应的解析方式对各个所述报文项进行解析,获得每个报文项的报文信息,包括:
确定每个所述报文项的报文项类型;
基于每个所述报文项类型确定该报文项对应的解析方式;
按每个所述报文项对应的解析方式对每个所述报文项进行解析,得到每个所述报文项的报文信息。
上述的方法,可选的,按所述目标报文格式对所述上下文中存放的报文信息进行组包,得到所述目标报文格式对应的目标应用报文,包括:
确定所述目标报文格式所定义的各个目标报文项格式;
依次在所述上下文中获取与每个所述目标报文项格式对应的报文信息,并基于每个所述目标报文项格式将所述上下文中存放的与其对应的报文信息封装成相应的目标报文项;
由各个所述目标报文项组成目标应用报文。
上述的方法,可选的,所述将每个所述报文项的报文信息依次存放至预先建立的上下文,包括:
确定每个所述报文信息在所述上下文中对应的缓存层级;
将每个所述报文信息存放至所述上下文中与其对应的缓存层级。
一种报文格式转换装置,应用于网关,所述装置包括:
接收单元,用于当接收到预置的源报文***发送的业务报文时,获取所述业务报文的报文格式;
第一确定单元,用于基于所述报文格式确定所述业务报文的各个报文项;
解析单元,用于按每个所述报文项对应的解析方式对每个所述报文项进行解析,获得每个报文项的报文信息,并将每个所述报文项的报文信息依次存放至预先建立的上下文;
第二确定单元,用于确定预置的目标应用***对应的目标报文格式,所述目标应用***为处理所述业务报文对应的业务的应用***;
组包单元,用于按所述目标报文格式对所述上下文中存放的报文信息进行组包,得到所述目标报文格式对应的目标应用报文;
发送单元,用于将所述目标应用报文发送至所述目标应用***。
上述的装置,可选的,获取所述业务报文的报文格式的接收单元,被配置为:
依据所述源报文***的***标识获取所述源报文***的报文格式定义文件;
读取所述报文格式定义文件,获得所述业务报文的报文格式。
上述的装置,可选的,所述按每个所述报文项对应的解析方式对各个所述报文项进行解析,获得每个报文项的报文信息的解析单元,被配置为:
确定每个所述报文项的报文项类型;
基于每个所述报文项类型确定该报文项对应的解析方式;
按每个所述报文项对应的解析方式对每个所述报文项进行解析,得到每个所述报文项的报文信息。
上述的装置,可选的,所述组包单元,被配置为:
确定所述目标报文格式所定义的各个目标报文项格式;
依次在所述上下文中获取与每个所述目标报文项格式对应的报文信息,并将已获取的报文信息基于该目标报文项格式组成对应的目标报文项;
将各个所述目标报文项进行封装,得到目标应用报文。
上述的装置,可选的,所述将每个所述报文项的报文信息依次存放至预先建立的上下文的解析单元,被配置为:
确定每个所述报文信息在所述上下文中对应的缓存层级;
将每个所述报文信息存放至所述上下文中与其对应的缓存层级。
与现有技术相比,本发明包括以下优点:
本发明提供了一种报文格式转换方法和装置,可以应用于网关,该方法包括:当接收到预置的源报文***发送的业务报文时,获取所述业务报文的报文格式;基于所述报文格式确定所述业务报文的各个报文项;按每个所述报文项对应的解析方式对每个所述报文项进行解析,获得每个报文项的报文信息,并将每个所述报文项的报文信息依次存放至预先建立的上下文;确定预置的目标应用***对应的目标报文格式,所述目标应用***为处理所述业务报文对应的业务的应用***;按所述目标报文格式对所述上下文中存放的报文信息进行组包,得到所述目标报文格式对应的目标应用报文;将所述目标应用报文发送至所述目标应用***。应用本发明提供的报文格式转换方法,通过网关进行不同***间的报文的格式转换,使得各个***可以无需关注报文的格式转换,降低了***的复杂度,提高了报文格式转换的效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明提供的一种报文格式转换方法的方法流程图;
图2为本发明提供的一种报文格式转换方法的又一方法流程图;
图3为本发明提供的一种报文格式转换方法的又一方法流程图;
图4为本发明提供的一种实施场景示例图;
图5为本发明提供的一种报文格式转换的过程示意图;
图6为本发明提供的一种报文项类型的示例图;
图7为本发明提供的一种报文格式转换装置的结构示意图;
图8为本发明提供的一种电子设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明可用于众多通用或专用的计算装置环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器装置、包括以上任何装置或设备的分布式计算环境等等。
本发明实施例提供了一种报文格式转换方法,该方法可以应用在多种***平台,其执行主体可以为电子设备的处理器,该电子设备可以为网关,所述方法的方法流程图如图1所示,具体包括:
S101:当接收到预置的源报文***发送的业务报文时,获取所述业务报文的报文格式。
本发明实施例提供的方法中,源报文***可以为发送的报文的业务***,在任意一个业务***发送业务报文的情况下,可以将发送报文的该业务***作为源报文***,源报文***具有其对应的业务报文的报文格式。
其中,该报文格式的类型可以为XML、JSON、定长串、不定长串、分割符、键值对、8583、IMIX、FIN等等其中一种。
具体的,报文格式可以表征报文的组成定义。
S102:基于所述报文格式确定所述业务报文的各个报文项。
本发明实施例提供的方法中,报文项的报文项类型可以为字段类型、循环类型、分支类型以及子报文类型。
其中,每个业务报文由一个或多个类型的报文项组成。
具体的,基于该业务报文的报文格式即可以确定该业务报文的报文项组成。
S103:按每个所述报文项对应的解析方式对每个所述报文项进行解析,获得每个报文项的报文信息,并将每个所述报文项的报文信息依次存放至预先建立的上下文。
本发明实施例提供的方法中,该上下文可以为报文信息缓存,该报文信息缓存具有多个用于存放报文信息的缓存层级。
其中,在解析到每个报文项,得到该报文项的报文信息时,可以将该报文信息存放至该上下文中。
具体的,该解析报文项可以指对该报文项进行拆项,不同类型的报文项对应的解析方式不同,即拆项方式可以不同,也就是说,每一类型的报文项均具有其对应的解析方式。
S104:确定预置的目标应用***对应的目标报文格式,所述目标应用***为处理所述业务报文对应的业务的应用***。
本发明实施例提供的方法中,该目标报文格式可以为与该目标应用***的数据接口相匹配的报文格式。
其中,该目标报文格式的类型也可以为XML、JSON、定长串、不定长串、分割符、键值对、8583、IMIX、FIN等其中一种。
可选的,该目标报文格式的类型与该业务报文的报文格式的类型不同,例如,业务报文的报文格式类型可以为XML,该目标报文格式可以为JSON。
S105:按所述目标报文格式对所述上下文中存放的报文信息进行组包,得到所述目标报文格式对应的目标应用报文。
本发明实施例提供的方法中,给目标报文格式可以表征目标应用报文的目标报文项组成。
其中,可以在上下文依次获取报文信息,以依次按每个目标报文项对应的组装方式对获取的报文进行组装,得到各个目标报文项,由各个目标报文项组成目标应用报文。
S106:将所述目标应用报文发送至所述目标应用***。
本发明实施例提供的方法中,将该目标应用报文发送至该目标应用***,使得该目标应用***基于该目标应用报文进行相应的业务处理。
本发明实施例提供了一种报文格式转换方法,可以应用于网关,该方法包括:当接收到预置的源报文***发送的业务报文时,获取所述业务报文的报文格式;基于所述报文格式确定所述业务报文的各个报文项;按每个所述报文项对应的解析方式对每个所述报文项进行解析,获得每个报文项的报文信息,并将每个所述报文项的报文信息依次存放至预先建立的上下文;确定预置的目标应用***对应的目标报文格式,所述目标应用***为处理所述业务报文对应的业务的应用***;按所述目标报文格式对所述上下文中存放的报文信息进行组包,得到所述目标报文格式对应的目标应用报文;将所述目标应用报文发送至所述目标应用***。应用本发明实施例提供的报文格式转换方法,通过网关进行不同***间的报文的格式转换,使得各个***可以无需关注报文的格式转换,降低了***的复杂度,提高了报文格式转换的效率。
本发明实施例提供的方法,基于上述的实施过程,具体的,所述获取所述业务报文的报文格式,包括:
依据所述源报文***的***标识获取所述源报文***的报文格式定义文件;
读取所述报文格式定义文件,获得所述业务报文的报文格式。
本发明实施例提供的方法中,可以预先存储各个***的报文格式定义文件。
具体的,可以预先设置的配置文件中记录报文格式定义文件与***标识之间的对应关系,可以基于该源***的***标识查询该配置文件,从而获取到源报文***的报文格式定义文件。
其中,该报文格式定义文件中记录有该源***的业务报文的报文格式。
本发明实施例提供的方法,基于上述的实施过程,具体的,所述按每个所述报文项对应的解析方式对各个所述报文项进行解析,获得每个报文项的报文信息,如图2所示,具体包括:
S201:确定每个所述报文项的报文项类型。
本发明实施例提供的方法中,对于报文项以及目标报文项,其报文项类型可以包括字段类型、循环类型、分支类型以及子报文类型。
其中,字段类型的报文项可以是定义报文的基本单元内容,可以包括字段名称、字段值以及报文结构的路径,字段类型的报文项一般定义如下:
<字段名称="字段具体名称"类型="字段类型"值="字段取值"路径="字段URL路径"/>
可选的,循环类型的报文项可以是有重复文字段的格式,可以包括循环名称、循环次数、字段等,循环类型的报文项一般定义如下:
<循环循环名称="循环字段具体名称"循环次数="循环的次数">
<字段/>
</循环>
可选的,分支类型的报文项可以定义报文字段的刷选条件,具体包括分支名称、判断条件、字段等,分支类型的报文项一般定义如下:
<分支名称="分支具体名称">
<条件分支判断条件="分支的判断条件">
<字段/>
<条件分支/>
</分支>
可选的,子报文类型的报文项可以定义一段独立的报文格式,可以包括子报文名称、字段、循环以及分支等,子报文类型的报文项一般定义如下:
<子报文名称="子报文具体名称">
<字段/>
<循环/>
<分支/>
</子报文>
可选的,可以基于业务报文的报文格式确定各个报文项以及各个报文项的报文项类型。
S202:基于每个所述报文项类型确定该报文项对应的解析方式。
其中,每个报文项类型均具有其对应的解析方式。
S203:按每个所述报文项对应的解析方式对每个所述报文项进行解析,得到每个所述报文项的报文信息。
本发明实施例提供的方法中,该报文信息可以包括报文项类型、值类型值类型说明以及存储结构等。
本发明实施例提供的方法,基于上述的实施过程,具体的,按所述目标报文格式对所述上下文中存放的报文信息进行组包,得到所述目标报文格式对应的目标应用报文,如图3所示,具体包括:
S301:确定所述目标报文格式所定义的各个目标报文项格式。
本发明实施例提供的方法中,目标报文项格式可以包括目标报文项的报文项类型,该目标报文项格式用于表征其对应的目标报文项的组成。
S302:依次在所述上下文中获取与每个所述目标报文项格式对应的报文信息,并基于每个所述目标报文项格式将所述上下文中存放的与其对应的报文信息封装成相应的目标报文项。
本发明实施例提供的方法中,该上下文中采用键值对(Key-Value)形式存储,其中,键值对的Key是各个报文项的报文项类型的名称,键值对的Value针对不同类型的报文格式定义则有不同的值类型,参见表1,为本发明实施例提供的一种上下文中的报文信息存储示例表,具体包括:
表1
具体的,在该上下文中,获取每个目标报文项对应的报文信息,并按每个目标报文项各自对应的组装方式对报文信息进行组装,得到目标报文项。
S303:由各个所述目标报文项组成目标应用报文。
本发明实施例提供的方法中,获取到各个目标报文项后,得到各个目标报文项组成的目标应用报文。
本发明实施例提供的方法,基于上述的实施过程,具体的,所述将每个所述报文项的报文信息依次存放至预先建立的上下文,包括:
确定每个所述报文信息在所述上下文中对应的缓存层级;
将每个所述报文信息存放至所述上下文中与其对应的缓存层级。
本发明实施例提供的方法中,该上下文设置有多层缓存层级,可以按每个报文信息所对应的报文项的拆项顺序,确定该报文信息在上下文中对应的存储层级,并将该报文信息存放至其对应的缓存层级。
参见图4,为本发明提供的一实施场景示例图,本发明实施例提供的实施场景包括了源报文***401、网关402以及目标应用***403。
源报文***401可以向网关402发送业务请求,该网关402接收该业务请求后,获取该业务请求中包含的所业务报文,执行报文转换过程,参见图5,具体包括:
通过报文转换引擎按行读取源应用***的报文格式定义文件,获得业务报文的每个报文项的报文格式定义,并在获取得每个报文项的格式定义时;基于该报文格式定义确定该报文项的报文项类型,执行该报文项类型相应的拆包操作:
①若报文项类型为字段类型,则从源应用***的报文中,根据报文字段定义,获取该报文字段的值。
②若报文项类型为循环类型,则根据循环次数继续读取循环中子报文。
③若报文项类型为分支类型,则根据分支条件,执行满足条件的分支中子报文。
④若报文项类型为子报文类型,继续读取报文格式定义文件,获取下一个报文格式定义,以确定该报文项的各个子级的报文项的报文项类型。
将获取将获取到的报文字段及对应报文字段的值,放入上下文中,源应用***的报文拆包过程结束,进入目标应用***的组包过程。
通过报文转换引擎按行读取源应用***的报文格式定义文件,获得目标应用报文的每个目标报文项的报文格式定义,并在获取得每个目标报文项的格式定义时;基于该报文格式定义确定该目标报文项的报文项类型,执行该目标报文项的报文项类型相应的组包操作,组包与拆包过程类似,区别为报文组包的报文字段的值是从上下文中获取的。
具体的,组包过程结束后,得到所述目标报文格式对应的目标应用报文;将所述目标应用报文发送至所述目标应用***。
其中,对于每一类型的报文项,其可以包含一个或多个子级的报文项,参见图6,为本发明提供的一种报文项类型的示例图。
报文项的报文项类型可以包含字段类型、循环类型、分支类型以及子报文类型,每种类型的报文项的报文定义又可以包含0到个子级的子报文类型的报文项,通过循环嵌套模式来完成整个报文定义。
具体的,以XML类型报文为例,利用报文格式定义模型进行描述,XML报文示例如下:
相应的,报文格式定义如下:
可选的,可以将该报文格式定义记录至报文格式定义文件中。
其中,若将该XML报文存储至上下文,则其上下文结构可以为:
{user={Name=”Zhang san”,Item=[{Account=0001,Active=true},{Active=true}]}}
应用本发明实施例提供的报文格式转换方法,通过网关进行不同***间的报文的格式转换,即,基于报文格式定义,能够实现任意一种报文格式转换为另一种报文格式,使得各个***可以无需关注报文的格式转换,降低了***的复杂度,通用性高,并且网关的报文转换引擎内部的报文拆包、报文组包均是在上下文中进行处理,上下文采用缓存结构实现,因此在性能上具有很高的效率。
与图1所述的方法相对应,本发明实施例还提供了一种报文格式转换装置,用于对图1中方法的具体实现,本发明实施例提供的报文格式转换装置可以应用于计算机终端或各种移动设备中,其结构示意图如图7所示,具体包括:
接收单元501,用于当接收到预置的源报文***发送的业务报文时,获取所述业务报文的报文格式;
第一确定单元502,用于基于所述报文格式确定所述业务报文的各个报文项;
解析单元503,用于按每个所述报文项对应的解析方式对每个所述报文项进行解析,获得每个报文项的报文信息,并将每个所述报文项的报文信息依次存放至预先建立的上下文;
第二确定单元504,用于确定预置的目标应用***对应的目标报文格式,所述目标应用***为处理所述业务报文对应的业务的应用***;
组包单元505,用于按所述目标报文格式对所述上下文中存放的报文信息进行组包,得到所述目标报文格式对应的目标应用报文;
发送单元506,用于将所述目标应用报文发送至所述目标应用***。
在本发明提供的一实施例中,基于上述的装置,具体的,获取所述业务报文的报文格式的接收单元501,被配置为:
依据所述源报文***的***标识获取所述源报文***的报文格式定义文件;
读取所述报文格式定义文件,获得所述业务报文的报文格式。
在本发明提供的一实施例中,基于上述的装置,具体的,所述按每个所述报文项对应的解析方式对各个所述报文项进行解析,获得每个报文项的报文信息的解析单元503,被配置为:
确定每个所述报文项的报文项类型;
基于每个所述报文项类型确定该报文项对应的解析方式;
按每个所述报文项对应的解析方式对每个所述报文项进行解析,得到每个所述报文项的报文信息。
在本发明提供的一实施例中,基于上述的装置,具体的,所述组包单元505,被配置为:
确定所述目标报文格式所定义的各个目标报文项格式;
依次在所述上下文中获取与每个所述目标报文项格式对应的报文信息,并将已获取的报文信息基于该目标报文项格式组成对应的目标报文项;
将各个所述目标报文项进行封装,得到目标应用报文。
在本发明提供的一实施例中,基于上述的装置,具体的,所述将每个所述报文项的报文信息依次存放至预先建立的上下文的解析单元503,被配置为:
确定每个所述报文信息在所述上下文中对应的缓存层级;
将每个所述报文信息存放至所述上下文中与其对应的缓存层级。
上述本发明实施例公开的报文格式转换装置中的各个单元和模块具体的原理和执行过程,与上述本发明实施例公开的报文格式转换方法相同,可参见上述本发明实施例提供的报文格式转换方法中相应的部分,这里不再进行赘述。
本发明实施例还提供了一种存储介质,所述存储介质包括存储的指令,其中,在所述指令运行时控制所述存储介质所在的设备执行上述报文格式转换方法。
本发明实施例还提供了一种电子设备,其结构示意图如图8所示,具体包括存储器601,以及一个或者一个以上的指令602,其中一个或者一个以上指令602存储于存储器601中,且经配置以由一个或者一个以上处理器603执行所述一个或者一个以上指令602进行以下操作:
当接收到预置的源报文***发送的业务报文时,获取所述业务报文的报文格式;
基于所述报文格式确定所述业务报文的各个报文项;
按每个所述报文项对应的解析方式对每个所述报文项进行解析,获得每个报文项的报文信息,并将每个所述报文项的报文信息依次存放至预先建立的上下文;
确定预置的目标应用***对应的目标报文格式,所述目标应用***为处理所述业务报文对应的业务的应用***;
按所述目标报文格式对所述上下文中存放的报文信息进行组包,得到所述目标报文格式对应的目标应用报文;
将所述目标应用报文发送至所述目标应用***。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本发明时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
以上对本发明所提供的一种报文格式转换方法进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (6)
1.一种报文格式转换方法,其特征在于,应用于网关,所述方法包括:
当接收到预置的源报文***发送的业务报文时,获取所述业务报文的报文格式;
基于所述报文格式确定所述业务报文的各个报文项;
按每个所述报文项对应的解析方式对每个所述报文项进行解析,获得每个报文项的报文信息,并将每个所述报文项的报文信息依次存放至预先建立的上下文;所述按每个所述报文项对应的解析方式对各个所述报文项进行解析,获得每个报文项的报文信息,包括:确定每个所述报文项的报文项类型;基于每个所述报文项类型确定该报文项对应的解析方式;按每个所述报文项对应的解析方式对每个所述报文项进行解析,得到每个所述报文项的报文信息;所述报文项的报文项类型包括字段类型、循环类型、分支类型以及子报文类型;
所述将每个所述报文项的报文信息依次存放至预先建立的上下文,包括:确定每个所述报文信息在所述上下文中对应的缓存层级;将每个所述报文信息存放至所述上下文中与其对应的缓存层级;
确定预置的目标应用***对应的目标报文格式,所述目标应用***为处理所述业务报文对应的业务的应用***;
按所述目标报文格式对所述上下文中存放的报文信息进行组包,得到所述目标报文格式对应的目标应用报文;
将所述目标应用报文发送至所述目标应用***。
2.根据权利要求1所述的方法,其特征在于,所述获取所述业务报文的报文格式,包括:
依据所述源报文***的***标识获取所述源报文***的报文格式定义文件;
读取所述报文格式定义文件,获得所述业务报文的报文格式。
3.根据权利要求1所述的方法,其特征在于,按所述目标报文格式对所述上下文中存放的报文信息进行组包,得到所述目标报文格式对应的目标应用报文,包括:
确定所述目标报文格式所定义的各个目标报文项格式;
依次在所述上下文中获取与每个所述目标报文项格式对应的报文信息,并基于每个所述目标报文项格式将所述上下文中存放的与其对应的报文信息封装成相应的目标报文项;
由各个所述目标报文项组成目标应用报文。
4.一种报文格式转换装置,其特征在于,应用于网关,所述装置包括:
接收单元,用于当接收到预置的源报文***发送的业务报文时,获取所述业务报文的报文格式;
第一确定单元,用于基于所述报文格式确定所述业务报文的各个报文项;
解析单元,用于按每个所述报文项对应的解析方式对每个所述报文项进行解析,获得每个报文项的报文信息,并将每个所述报文项的报文信息依次存放至预先建立的上下文;所述按每个所述报文项对应的解析方式对各个所述报文项进行解析,获得每个报文项的报文信息的解析单元,被配置为:确定每个所述报文项的报文项类型;基于每个所述报文项类型确定该报文项对应的解析方式;按每个所述报文项对应的解析方式对每个所述报文项进行解析,得到每个所述报文项的报文信息;所述报文项的报文项类型包括字段类型、循环类型、分支类型以及子报文类型;
所述将每个所述报文项的报文信息依次存放至预先建立的上下文的解析单元,被配置为:确定每个所述报文信息在所述上下文中对应的缓存层级;将每个所述报文信息存放至所述上下文中与其对应的缓存层级;
第二确定单元,用于确定预置的目标应用***对应的目标报文格式,所述目标应用***为处理所述业务报文对应的业务的应用***;
组包单元,用于按所述目标报文格式对所述上下文中存放的报文信息进行组包,得到所述目标报文格式对应的目标应用报文;
发送单元,用于将所述目标应用报文发送至所述目标应用***。
5.根据权利要求4所述的装置,其特征在于,获取所述业务报文的报文格式的接收单元,被配置为:
依据所述源报文***的***标识获取所述源报文***的报文格式定义文件;
读取所述报文格式定义文件,获得所述业务报文的报文格式。
6.根据权利要求4所述的装置,其特征在于,所述组包单元,被配置为:
确定所述目标报文格式所定义的各个目标报文项格式;
依次在所述上下文中获取与每个所述目标报文项格式对应的报文信息,并将已获取的报文信息基于该目标报文项格式组成对应的目标报文项;
将各个所述目标报文项进行封装,得到目标应用报文。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011247175.4A CN112383533B (zh) | 2020-11-10 | 2020-11-10 | 报文格式转换方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011247175.4A CN112383533B (zh) | 2020-11-10 | 2020-11-10 | 报文格式转换方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112383533A CN112383533A (zh) | 2021-02-19 |
CN112383533B true CN112383533B (zh) | 2023-07-28 |
Family
ID=74579716
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011247175.4A Active CN112383533B (zh) | 2020-11-10 | 2020-11-10 | 报文格式转换方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112383533B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113542374B (zh) * | 2021-06-30 | 2022-04-12 | 北京宇信科技集团股份有限公司 | 报文处理方法及*** |
CN113726781B (zh) * | 2021-08-31 | 2023-05-16 | 平安养老保险股份有限公司 | 报文信息处理方法、装置、计算机设备及存储介质 |
CN113783860B (zh) * | 2021-09-01 | 2023-11-28 | 建信金融科技有限责任公司 | 一种基于可视化配置的报文处理方法、装置、设备及存储介质 |
CN113709177B (zh) * | 2021-09-06 | 2022-10-18 | 中国银行股份有限公司 | 一种处理报文的方法及外调网关 |
CN113765722B (zh) * | 2021-09-17 | 2023-01-20 | 中国银行股份有限公司 | 一种可配置的多协议报文处理方法、装置及电子设备 |
CN114025015A (zh) * | 2021-11-29 | 2022-02-08 | 中电金信软件有限公司 | 一种报文传输方法及其装置 |
CN114745449B (zh) * | 2022-04-13 | 2024-01-30 | 中国银行股份有限公司 | 一种报文处理方法及装置、存储介质及电子设备 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111447257A (zh) * | 2020-03-09 | 2020-07-24 | 中国建设银行股份有限公司 | 报文转换方法和装置 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7072985B1 (en) * | 2001-05-02 | 2006-07-04 | Mks Instruments, Inc. | Method and apparatus for two phase structured message to tagged message translation |
CN102546442B (zh) * | 2012-03-09 | 2015-06-03 | 北京思特奇信息技术股份有限公司 | 通信协议转换技术 |
CN108881172A (zh) * | 2018-05-22 | 2018-11-23 | 阿里巴巴集团控股有限公司 | 报文的解析方法及装置 |
CN111061481A (zh) * | 2019-12-17 | 2020-04-24 | 神州数码融信软件有限公司 | 数据格式转换方法及装置 |
CN111104106A (zh) * | 2019-12-31 | 2020-05-05 | 中电长城(长沙)信息技术有限公司 | 集成业务流程与通讯报文的可视化开发方法、***及介质 |
-
2020
- 2020-11-10 CN CN202011247175.4A patent/CN112383533B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111447257A (zh) * | 2020-03-09 | 2020-07-24 | 中国建设银行股份有限公司 | 报文转换方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN112383533A (zh) | 2021-02-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112383533B (zh) | 报文格式转换方法及装置 | |
CN103634382B (zh) | 一种在网页上实现实时交互的***及方法 | |
US20150149628A1 (en) | System and method for a service metering framework in a network environment | |
US20020116205A1 (en) | Distributed transaction processing system | |
KR20190099353A (ko) | 음성 활성 데이터 패킷의 데이터 구조 풀링 | |
CN107463434B (zh) | 一种分布式任务处理方法与设备 | |
CN108563768A (zh) | 不同数据模型的数据转换方法、装置、设备及存储介质 | |
CN104702675B (zh) | 用户事件的响应方法及装置 | |
CN114490268A (zh) | 全链路监控方法、装置、设备、存储介质和程序产品 | |
CN112511591A (zh) | 一种医院接口数据交互的实现方法、装置、设备和介质 | |
CN109783562B (zh) | 一种业务处理方法和装置 | |
CN110781180A (zh) | 一种数据筛选方法和数据筛选装置 | |
CN101977361A (zh) | 一种批量短信预处理方法 | |
CN111966653A (zh) | 微服务调用链路数据处理方法、装置、服务器及存储介质 | |
CN107040613A (zh) | 一种报文传输方法及*** | |
CN105516271A (zh) | 业务处理***、业务处理方法及装置 | |
CN111949521B (zh) | 软件性能测试方法及装置 | |
CN112417016A (zh) | 一种数据交换方法、***、设备及存储介质 | |
CN114567571B (zh) | 性能测试方法、装置、电子设备和计算机可读存储介质 | |
CN101958916A (zh) | 一种基于富客户端应用的数据处理方法及装置 | |
CN113992644A (zh) | 一种基于无服务技术的物联网关***及其数据处理方法 | |
CN115913912A (zh) | 报文拦截及业务链路图的生成方法及装置 | |
CN110555042B (zh) | 一种数据的实时检索方法,装置及*** | |
CN118214786B (zh) | 高并发多协议通信方法、装置、电子设备及存储介质 | |
CN114844957B (zh) | 链路报文转换方法、装置、设备、存储介质和程序产品 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |