CN117997978A - 报文传输方法、装置、计算机设备及存储介质 - Google Patents
报文传输方法、装置、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN117997978A CN117997978A CN202211338995.3A CN202211338995A CN117997978A CN 117997978 A CN117997978 A CN 117997978A CN 202211338995 A CN202211338995 A CN 202211338995A CN 117997978 A CN117997978 A CN 117997978A
- Authority
- CN
- China
- Prior art keywords
- message
- target
- initial
- external system
- request message
- 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.)
- Pending
Links
- 230000005540 biological transmission Effects 0.000 title claims abstract description 90
- 238000000034 method Methods 0.000 title claims abstract description 56
- 238000006243 chemical reaction Methods 0.000 claims abstract description 141
- 230000004044 response Effects 0.000 claims description 33
- 230000006870 function Effects 0.000 claims description 22
- 230000015654 memory Effects 0.000 claims description 21
- 238000012216 screening Methods 0.000 claims description 10
- 230000006854 communication Effects 0.000 claims description 9
- 238000004891 communication Methods 0.000 claims description 9
- 238000004590 computer program Methods 0.000 claims description 5
- 238000003032 molecular docking Methods 0.000 abstract description 11
- 238000011161 development Methods 0.000 abstract description 7
- 238000012545 processing Methods 0.000 description 9
- 238000013478 data encryption standard Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 4
- 210000001503 joint Anatomy 0.000 description 4
- 230000007175 bidirectional communication Effects 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000001514 detection method Methods 0.000 description 1
- 238000007599 discharging Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000001502 supplementing effect Effects 0.000 description 1
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本申请公开了一种报文传输方法、装置、计算机设备及存储介质,该报文传输方法包括:获取物流平台发送的针对外部***的请求数据,请求数据中包括第一请求报文及外部***的配置信息;基于配置信息对第一请求报文进行格式转换,得到第二请求报文;从预先注入的多个初始加密算法中确定目标加密算法,目标加密算法为多个初始加密算法中与外部***匹配的算法;基于目标加密算法对第二请求报文进行加密处理,得到目标请求报文;将目标请求报文发送至外部***。本申请实施例可以使物流平台和外部***开发对接代码而投入的开发成本降低至零,提高物流平台的稳定性,并且在报文传输过程中可以实现外部***的私有鉴权。
Description
技术领域
本申请涉及数据传输技术领域,具体涉及一种报文传输方法、装置、计算机设备及存储介质。
背景技术
物流平台是一款企业级的快件管理***,其可以帮助企业智能化管理快递、监控快递成本,因此,越来越多外部***选择与物流平台进行对接。现有外部***与物流平台进行对接时需要在物流平台和外部***均开发对接代码,物流平台和外部***都需要投入巨大开发成本,并且物流平台会由于频繁发版,而导致稳定性降低。
发明内容
本申请实施例提供一种报文传输方法、装置、计算机设备及存储介质,无需在物流平台和外部***开发对接代码,使物流平台和外部***开发对接代码而投入的开发成本降低至零,提高物流平台的稳定性,并且在报文传输过程中可以实现外部***的私有鉴权。
一方面,本申请提供一种报文传输方法,所述报文传输方法应用于报文传输装置,所述报文传输装置与物流平台和外部***分别通信连接,所述报文传输方法包括:
获取所述物流平台发送的针对所述外部***的请求数据,所述请求数据中包括第一请求报文及所述外部***的配置信息;
基于所述配置信息对所述第一请求报文进行格式转换,得到第二请求报文;
从预先注入的多个初始加密算法中确定目标加密算法,所述目标加密算法为所述多个初始加密算法中与所述外部***匹配的算法;
基于所述目标加密算法对所述第二请求报文进行加密处理,得到目标请求报文;
将所述目标请求报文发送至所述外部***。
在本申请一些实施方案中,所述基于所述配置信息对所述第一请求报文进行格式转换,得到第二请求报文,包括:
基于所述配置信息,从预先生成的多个初始报文转换代码中确定目标报文转换代码;
基于所述目标报文转换代码对所述第一请求报文进行格式转换,得到第二请求报文。
在本申请一些实施方案中,所述基于所述配置信息,从预先生成的多个初始报文转换代码中确定目标报文转换代码,包括:
获取预先生成的多个初始报文转换代码分别对应的多个配置接口信息;
基于所述配置信息,从所述多个配置接口信息中筛选出候选接口信息,所述候选接口信息为所述多个配置接口信息中与所述配置信息匹配的信息;
将所述候选接口信息对应的初始报文转换代码,确定为所述目标报文转换代码。
在本申请一些实施方案中,所述目标报文转换代码中包括所述外部***的加密信息,所述从预先注入的多个初始加密算法中确定目标加密算法,包括:
获取预先注入的多个初始加密算法分别对应的多个初始算法标识;
基于所述加密信息,从所述多个初始算法标识中筛选出目标算法标识,所述目标算法标识为所述多个初始算法标识中与所述加密信息匹配的标识;
将所述目标算法标识对应的初始加密算法,确定为目标加密算法。
在本申请一些实施方案中,所述将所述目标请求报文发送至所述外部***之后,所述方法还包括:
接收所述外部***基于所述目标请求报文返回的初始响应报文;
基于所述目标报文转换代码对所述初始响应报文进行格式转换,得到目标响应报文;
将所述目标响应报文发送至所述物流平台。
在本申请一些实施方案中,所述第一请求报文包括多个初始报文参数名及所述多个初始报文参数名对应的多个初始报文参数值,所述基于所述配置信息对所述第一请求报文进行格式转换,得到第二请求报文之前,所述方法还包括:
基于所述多个初始报文参数值,确定所述多个初始报文参数名中是否存在候选报文参数名,所述候选报文参数名为所述多个初始报文参数名中不存在对应的初始报文参数值的参数名;
当所述多个初始报文参数名中存在候选报文参数名时,调用预先注入的参数获取函数从所述物流平台中获取所述候选报文参数名对应的候选报文参数值;
基于所述候选报文参数值,对所述多个初始报文参数值进行补齐。
在本申请一些实施方案中,所述基于所述目标报文转换代码对所述第一请求报文进行格式转换,得到第二请求报文之前,所述方法还包括:
将所述目标报文转换代码、所述多个初始加密算法及所述参数获取函数注入预设的执行环境,以实现所述执行环境的初始化,所述执行环境为预先设置的所述目标报文转换代码的运行环境。
另一方面,本申请提供一种报文传输装置,所述报文传输装置与物流平台和外部***分别通信连接,所述报文传输装置包括:
数据获取单元,用于获取所述物流平台发送的针对所述外部***的请求数据,所述请求数据中包括第一请求报文及所述外部***的配置信息;
报文转换单元,用于基于所述配置信息对所述第一请求报文进行格式转换,得到第二请求报文;
第一确定单元,用于从预先注入的多个初始加密算法中确定目标加密算法,所述目标加密算法为所述多个初始加密算法中与所述外部***匹配的算法;
报文加密单元,用于基于所述目标加密算法对所述第二请求报文进行加密处理,得到目标请求报文;
报文传输单元,用于将所述目标请求报文发送至所述外部***。
在本申请一些实施方案中,所述报文转换单元具体用于:
基于所述配置信息,从预先生成的多个初始报文转换代码中确定目标报文转换代码;
基于所述目标报文转换代码对所述第一请求报文进行格式转换,得到第二请求报文。
在本申请一些实施方案中,所述报文转换单元具体还用于:
获取预先生成的多个初始报文转换代码分别对应的多个配置接口信息;
基于所述配置信息,从所述多个配置接口信息中筛选出候选接口信息,所述候选接口信息为所述多个配置接口信息中与所述配置信息匹配的信息;
将所述候选接口信息对应的初始报文转换代码,确定为所述目标报文转换代码。
在本申请一些实施方案中,所述目标报文转换代码中包括所述外部***的加密信息,所述第一确定单元具体用于:
获取预先注入的多个初始加密算法分别对应的多个初始算法标识;
基于所述加密信息,从所述多个初始算法标识中筛选出目标算法标识,所述目标算法标识为所述多个初始算法标识中与所述加密信息匹配的标识;
将所述目标算法标识对应的初始加密算法,确定为目标加密算法。
在本申请一些实施例中,所述报文传输装置还包括:
报文接收单元,用于接收所述外部***基于所述目标请求报文返回的初始响应报文。
在本申请一些实施例中,所述报文转换单元还用于:
基于所述目标报文转换代码对所述初始响应报文进行格式转换,得到目标响应报文。
在本申请一些实施例中,所述报文传输单元还用于:
将所述目标响应报文发送至所述物流平台。
在本申请一些实施例中,所述第一请求报文包括多个初始报文参数名及所述多个初始报文参数名对应的多个初始报文参数值,所述报文传输装置还包括:
第二确定单元,用于基于所述多个初始报文参数值,确定所述多个初始报文参数名中是否存在候选报文参数名,所述候选报文参数名为所述多个初始报文参数名中不存在对应的初始报文参数值的参数名;
参数获取单元,用于当所述多个初始报文参数名中存在候选报文参数名时,调用预先注入的参数获取函数从所述物流平台中获取所述候选报文参数名对应的候选报文参数值;
参数补齐单元,用于基于所述候选报文参数值,对所述多个初始报文参数值进行补齐。
在本申请一些实施例中,所述报文传输装置还包括:
初始化单元,用于将所述目标报文转换代码、所述多个初始加密算法及所述参数获取函数注入预设的执行环境,以实现所述执行环境的初始化,所述执行环境为预先设置的所述目标报文转换代码的运行环境。
另一方面,本申请还提供一种计算机设备,所述计算机设备包括:
一个或多个处理器;
存储器;以及
一个或多个应用程序,其中所述一个或多个应用程序被存储于所述存储器中,并配置为由所述处理器执行以实现第一方面中任一项所述的报文传输方法。
第四方面,本申请还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器进行加载,以执行第一方面任一项所述的报文传输方法中的步骤。
本申请由报文传输装置基于外部***的配置信息对第一请求报文进行格式转换,无需在物流平台和外部***开发对接代码,使物流平台和外部***开发对接代码而投入的开发成本降低至零,提高物流平台的稳定性,基于预先注入的多个初始加密算法中确定的目标加密算法对格式转换后的报文进行加密处理,可以在报文传输过程中实现外部***的私有鉴权。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的报文传输***的场景示意图;
图2是本申请实施例中提供的报文传输方法的一个实施例流程示意图;
图3是本申请实施例中提供的报文传输方法的具体实施例流程示意图;
图4是本申请实施例中提供的报文传输装置的一个实施例结构示意图;
图5是本申请实施例中提供的计算机设备的一个实施例结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
在本申请的描述中,需要理解的是,术语“中心”、“纵向”、“横向”、“长度”、“宽度”、“厚度”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本申请和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本申请的限制。此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个所述特征。在本申请的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
在本申请中,“示例性”一词用来表示“用作例子、例证或说明”。本申请中被描述为“示例性”的任何实施例不一定被解释为比其它实施例更优选或更具优势。为了使本领域任何技术人员能够实现和使用本申请,给出了以下描述。在以下描述中,为了解释的目的而列出了细节。应当明白的是,本领域普通技术人员可以认识到,在不使用这些特定细节的情况下也可以实现本申请。在其它实例中,不会对公知的结构和过程进行详细阐述,以避免不必要的细节使本申请的描述变得晦涩。因此,本申请并非旨在限于所示的实施例,而是与符合本申请所公开的原理和特征的最广范围相一致。
需要说明的是,本申请实施例方法由于是在计算机设备中执行,各计算机设备的处理对象均以数据或信息的形式存在,例如时间,实质为时间信息,可以理解的是,后续实施例中若提及尺寸、数量、位置等,均为对应的数据存在,以便计算机设备进行处理,具体此处不作赘述。
本申请实施例提供一种报文传输方法、装置、计算机设备及存储介质,以下分别进行详细说明。
请参阅图1,图1为本申请实施例所提供的报文传输***的场景示意图,该报文传输***可以包括计算机设备100,计算机设备100中集成有报文传输装置,如图1中的计算机设备。
本申请实施例中计算机设备100主要用于获取物流平台发送的针对外部***的请求数据,请求数据中包括第一请求报文及外部***的配置信息;基于配置信息对第一请求报文进行格式转换,得到第二请求报文;从预先注入的多个初始加密算法中确定目标加密算法,目标加密算法为多个初始加密算法中与外部***匹配的算法;基于目标加密算法对第二请求报文进行加密处理,得到目标请求报文;将目标请求报文发送至外部***,计算机设备100可以基于配置信息对第一请求报文进行格式转换,无需在物流平台和外部***开发对接代码,使物流平台和外部***开发对接代码而投入的开发成本降低至零,提高物流平台的稳定性,计算机设备100可以根据预先注入的目标加密算法对格式转换后的报文进行加密处理,可以在报文传输过程中实现外部***的私有鉴权。
本申请实施例中,该计算机设备100可以是独立的服务器,也可以是服务器组成的服务器网络或服务器集群,例如,本申请实施例中所描述的计算机设备100,其包括但不限于计算机、网络主机、单个网络服务器、多个网络服务器集或多个服务器构成的云服务器。其中,云服务器由基于云计算(Cloud Computing)的大量计算机或网络服务器构成。
可以理解的是,本申请实施例中所使用的计算机设备100可以是既包括接收和发射硬件的设备,即具有能够在双向通信链路上,执行双向通信的接收和发射硬件的设备。这种设备可以包括:蜂窝或其他通信设备,其具有单线路显示器或多线路显示器或没有多线路显示器的蜂窝或其他通信设备。具体的计算机设备100具体可以是台式终端或移动终端,计算机设备100具体还可以是手机、平板电脑、笔记本电脑等中的一种。
本领域技术人员可以理解,图1中示出的应用环境,仅仅是与本申请方案一种应用场景,并不构成对本申请方案应用场景的限定,其他的应用环境还可以包括比图1中所示更多或更少的计算机设备,例如图1中仅示出1个计算机设备,可以理解的,该报文传输***还可以包括一个或多个其他服务,具体此处不作限定。
另外,如图1所示,该报文传输***还可以包括存储器200,用于存储数据,如多个初始加密算法,例如消息摘要算法第五版(Message Digest Algorithm 5,MD5)、安全哈希算法(Secure Hash Algorithm,SHA)、数据加密标准算法(Data Encryption Standard,DES),如外部***的配置信息,具体的,外部***的***ID、外部***的用户ID、外部***的接口地址等。
需要说明的是,图1所示的报文传输***的场景示意图仅仅是一个示例,本申请实施例描述的报文传输***以及场景是为了更加清楚的说明本申请实施例的技术方案,并不构成对于本申请实施例提供的技术方案的限定,本领域普通技术人员可知,随着报文传输***的演变和新业务场景的出现,本申请实施例提供的技术方案对于类似的技术问题,同样适用。
首先,本申请实施例中提供一种报文传输方法,该报文传输方法的执行主体为报文传输装置,该报文传输装置应用于计算机设备,该报文传输装置与物流平台和外部***分别通信连接,该报文传输方法包括:获取所述物流平台发送的针对所述外部***的请求数据,所述请求数据中包括第一请求报文及所述外部***的配置信息;基于所述配置信息对所述第一请求报文进行格式转换,得到第二请求报文;从预先注入的多个初始加密算法中确定目标加密算法,所述目标加密算法为所述多个初始加密算法中与所述外部***匹配的算法;基于所述目标加密算法对所述第二请求报文进行加密处理,得到目标请求报文;将所述目标请求报文发送至所述外部***。
如图2所示,为本申请实施例中报文传输方法的一个实施例流程示意图,该报文传输方法可以包括如下步骤301~305,具体如下:
301、获取所述物流平台发送的针对所述外部***的请求数据,所述请求数据中包括第一请求报文及所述外部***的配置信息。
物流平台为一种企业级的快递管理***,物流平台与多个外部***通过报文传输装置通信连接,外部***为多个外部***中的一个外部***,物流平台可以实现快递全程跟踪,在物流信息发生变化时,将物流信息推送到外部***。请求数据为物流平台针对外部***向报文传输装置发送的数据,请求数据中包括第一请求报文和外部***的配置信息,第一请求报文为物流平台接口格式请求报文,第一请求报文中携带物流平台向外部***发送的物流信息,物流平台接口格式为物流平台的接口发送报文的格式,物流平台接口格式包括但不限于XML报文、JSON报文等。配置信息为外部***的标识信息,用于唯一标识外部***,外部***的配置信息包括但不限于外部***的***ID、外部***的用户ID、外部***的接口信息等。当物流平台需要向外部***发送物流信息时,会按照物流平台接口格式将物流信息组装成第一请求报文,并向报文传输装置发送包含第一请求报文和外部***的配置信息的请求数据,报文传输装置接收到请求数据后,会获取该请求数据中的第一请求报文及外部***的配置信息,并基于配置信息将第一请求报文发送至外部***。
302、基于所述配置信息对所述第一请求报文进行格式转换,得到第二请求报文。
第二请求报文为对第一请求报文进行格式转换后得到的报文,第二请求报文为外部***接口格式请求报文,外部***接口格式为外部***的接口发送报文的格式,外部***接口格式包括但不限于XML报文、JSON报文等。为了将第一请求报文发送至外部***,报文传输装置获取物流平台发送的针对外部***的请求数据后,基于配置信息对第一请求报文进行格式转换,以便将第一请求报文转换为外部***接口格式的第二请求报文。
在一具体实施方式中,如图3所示,步骤302中所述基于所述配置信息对所述第一请求报文进行格式转换,得到第二请求报文,可以包括如下步骤401~402,具体如下:
401、基于所述配置信息,从预先生成的多个初始报文转换代码中确定目标报文转换代码;
402、基于所述目标报文转换代码对所述第一请求报文进行格式转换,得到第二请求报文。
多个初始报文转换代码为预先针对多个外部***分别生成的用于进行报文转换的代码,多个初始报文转换代码与多个外部***一一对应,例如,多个外部***包括外部***A、外部***B和外部***C,则会预先生成外部***A、外部***B和外部***C分别对应的初始报文转换代码A、初始报文转换代码B和初始报文转换代码C。目标报文转换代码为外部***对应的初始报文转换代码,目标报文转换代码可以将物流平台接口格式请求报文组装成外部***接口格式请求报文。
为了使物流平台可以与多个外部***进行对接,对于需要接入物流平台的外部***,会预先根据该外部***的接口文档生成该外部***对应的初始报文转换代码。在基于配置信息对第一请求报文进行格式转换时,首先基于配置信息,从预先生成的多个初始报文转换代码中确定与配置信息匹配的目标报文转换代码,然后基于目标报文转换代码对第一请求报文进行格式转换,即可得到外部***接口格式的第二请求报文。
在一具体实施方式中,步骤401中所述基于所述配置信息,从预先生成的多个初始报文转换代码中确定目标报文转换代码,可以包括如下步骤501~503,具体如下:
501、获取预先生成的多个初始报文转换代码分别对应的多个配置接口信息;
502、基于所述配置信息,从所述多个配置接口信息中筛选出候选接口信息,所述候选接口信息为所述多个配置接口信息中与所述配置信息匹配的信息;
503、将所述候选接口信息对应的初始报文转换代码,确定为所述目标报文转换代码。
多个初始报文转换代码中每个初始报文转换代码具有对应的配置接口信息,每个初始报文转换代码对应的配置接口信息可以为每个初始报文转换代码对应的外部***的***接口地址。候选接口信息为多个配置接口信息中与配置信息匹配的信息,例如,配置接口信息A为外部***A的***接口地址,配置信息中包括外部***A的***接口地址,则配置接口信息A与配置信息匹配,配置接口信息A为候选接口信息。
本实施例基于配置信息,从预先生成的多个初始报文转换代码中确定目标报文转换代码时,首先获取多个初始报文转换代码分别对应的多个配置接口信息,然后将配置信息和多个配置接口信息进行比较,基于比较结果从多个配置接口信息中筛选出与配置信息匹配的候选接口信息,最后将候选接口信息对应的初始报文转换代码,确定为目标报文转换代码。
303、从预先注入的多个初始加密算法中确定目标加密算法,所述目标加密算法为所述多个初始加密算法中与所述外部***匹配的算法。
多个初始加密算法为多个外部***支持的加密算法,多个初始加密算法包括但不限于消息摘要算法第五版(Message Digest Algorithm 5,MD5)、安全哈希算法(SecureHash Algorithm,SHA)、数据加密标准算法(Data Encryption Standard,DES)等,目标加密算法为外部***支持的加密算法。为了在报文传输过程中能够支持外部***的私有鉴权,本实施例预先注入多个初始加密算法,在得到第二请求报文后,从预先注入的多个初始加密算法中确定目标加密算法,以便后续步骤中基于目标加密算法对第二请求报文进行加密处理。
在一具体实施方式中,如图3所示,目标报文转换代码中包括外部***的加密信息,步骤303中所述从预先注入的多个初始加密算法中确定目标加密算法,可以包括如下步骤403~405,具体如下:
403、获取预先注入的多个初始加密算法分别对应的多个初始算法标识;
404、基于所述加密信息,从所述多个初始算法标识中筛选出目标算法标识,所述目标算法标识为所述多个初始算法标识中与所述加密信息匹配的标识;
405、将所述目标算法标识对应的初始加密算法,确定为目标加密算法。
目标报文转换代码中包括外部***的加密信息,加密信息包括但不限于目标加密算法的算法标识、密钥等。多个初始算法标识为多个初始加密算法分别对应的标识,用于唯一标识各个初始加密算法,目标算法标识为多个初始算法标识中与加密信息匹配的标识,例如,加密信息中包含MD5的算法标识,初始算法标识A为MD5的算法标识,则初始算法标识A与加密信息匹配,初始算法标识A为目标算法标识。
本实施例从预先注入的多个初始加密算法中确定目标加密算法时,首先获取预先注入的多个初始加密算法分别对应的多个初始算法标识,然后基于加密信息,从多个初始算法标识中筛选出与加密信息匹配的标识即目标算法标识,最后将目标算法标识对应的初始加密算法,确定为目标加密算法。
304、基于所述目标加密算法对所述第二请求报文进行加密处理,得到目标请求报文。
目标请求报文为基于目标加密算法对第二请求报文进行加密处理得到的报文,本实施例从预先注入的多个初始加密算法中确定目标加密算法后,基于目标加密算法对第二请求报文进行加密处理,得到目标请求报文。其中,第二请求报文的加密处理步骤随目标加密算法的不同而不同,例如,当目标加密算法为MD5时,对第二请求报文进行加密处理时,可以动态获取当前时间戳,然后基于***ID、密钥及时间戳生成签名信息,最后将签名信息放置于第二请求报文的报文头,即可实现第二请求报文的加密处理。
305、将所述目标请求报文发送至所述外部***。
报文传输装置对第一请求报文进行格式转换及加密处理后,即可将得到的目标请求报文发送至外部***,一方面,由于第一请求报文是在报文传输装置中进行格式转换,无需在物流平台和外部***开发对接代码,使物流平台和外部***开发对接代码而投入的开发成本降低至零,并且由于物流平台不会频繁发版,物流平台稳定性好。另一方面,报文传输过程中可以基于预先注入的加密算法对报文进行加密处理,使得转换得到的报文支持外部***的私有鉴权。
在一具体实施方式中,如图3所示,步骤305中所述将所述目标请求报文发送至所述外部***之后,可以包括如下步骤306~308,具体如下:
306、接收所述外部***基于所述目标请求报文返回的初始响应报文;
307、基于所述目标报文转换代码对所述初始响应报文进行格式转换,得到目标响应报文;
308、将所述目标响应报文发送至所述物流平台。
初始响应报文为外部***在接收到目标请求报文后返回的响应结果,初始响应报文为外部***接口格式响应报文,目标响应报文为物流平台接口格式响应报文。目标报文转换代码不仅可以将物流平台接口格式请求报文组装成外部***接口格式请求报文外,还可以将外部***接口格式响应报文组装成物流平台接口格式响应报文。本实施例外部***接收到报文传输装置发送的目标请求报文后,会基于目标请求报文向报文传输装置返回初始响应报文,报文传输装置接收到初始响应报文后,基于目标报文转换代码对初始响应报文进行格式转换,得到目标响应报文,再将目标响应报文发送至物流平台。
在一具体实施方式中,第一请求报文包括多个初始报文参数名及多个初始报文参数名对应的多个初始报文参数值,步骤302中所述基于所述配置信息对所述第一请求报文进行格式转换,得到第二请求报文之前,可以包括如下步骤309~311,具体如下:
309、基于所述多个初始报文参数值,确定所述多个初始报文参数名中是否存在候选报文参数名,所述候选报文参数名为所述多个初始报文参数名中不存在对应的初始报文参数值的参数名;
310、当所述多个初始报文参数名中存在候选报文参数名时,调用预先注入的参数获取函数从所述物流平台中获取所述候选报文参数名对应的候选报文参数值;
311、基于所述候选报文参数值,对所述多个初始报文参数值进行补齐。
第一请求报文包括多个初始报文参数名和多个初始报文参数值,多个初始报文参数名为第一请求报文中携带的物流信息的参数名,例如,多个初始报文参数名可以为运单号、寄件人、收件人、当前环节等,多个初始报文参数值为多个初始报文参数名对应的参数值,例如,多个初始报文参数名为运单号、寄件人、收件人时,多个初始报文参数值为具体的运单号、寄件人名字、收件人名字。候选报文参数名为多个初始报文参数名中缺失初始报文参数值的参数名,例如,多个初始报文参数名为运单号、寄件人、收件人,但多个初始报文参数值为具体的运单号和寄件人名字,即收件人不存在对应的初始报文参数值,此时收件人即为候选报文参数名。
考虑到第一请求报文中会存在参数值缺失的情况,报文传输装置获取第一请求报文后,会基于多个初始报文参数值,确定多个初始报文参数名中是否存在初始报文参数值缺失的初始报文参数名,即候选报文参数名,当多个初始报文参数名中存在候选报文参数名时,调用预先注入的参数获取函数从物流平台中获取候选报文参数名对应的候选报文参数值,并基于候选报文参数值对多个初始报文参数值进行补齐。例如,当收件人不存在对应的初始报文参数值时,报文传输装置可以通过调用预先注入的参数获取函数从物流平台中获取运单号对应的收件人名字,并将收件人名字加入多个初始报文参数值中,使得第一请求报文中每个初始报文参数名都有对应的初始报文参数值。
在一具体实施方式中,步骤402中所述基于所述目标报文转换代码对所述第一请求报文进行格式转换,得到第二请求报文之前,可以包括如下步骤406,具体如下:
406、将所述目标报文转换代码、所述多个初始加密算法及所述参数获取函数注入预设的执行环境,以实现所述执行环境的初始化,所述执行环境为预先设置的所述目标报文转换代码的运行环境。
执行环境为预先设置的目标报文转换代码的运行环境,执行环境可以是任意语言的JavaScript执行器,例如Golang、Java都有对应的JavaScript执行器。在对第一请求报文进行格式转换前,需要将目标报文转换代码、多个初始加密算法及参数获取函数注入预设的执行环境,以实现该执行环境的初始化。将目标报文转换代码注入执行环境后,即可在执行环境下执行报文转换代码,从而实现报文的转换。此外,由于执行环境中预先注入了多个初始加密算法,报文转换过程中还可以从多个初始加密算法中调用目标加密算法对报文进行加密处理,从而实现外部***的私有鉴权。另外,由于执行环境中预先注入了参数获取函数,在报文转换过程中还可通过调用参数获取函数与物流平台进行数据交互。
为了更好实现本申请实施例中报文传输方法,在报文传输方法基础之上,本申请实施例中还提供一种报文传输装置,如图4所示,所述报文传输装置700包括:
数据获取单元701,用于获取所述物流平台发送的针对所述外部***的请求数据,所述请求数据中包括第一请求报文及所述外部***的配置信息;
报文转换单元702,用于基于所述配置信息对所述第一请求报文进行格式转换,得到第二请求报文;
第一确定单元703,用于从预先注入的多个初始加密算法中确定目标加密算法,所述目标加密算法为所述多个初始加密算法中与所述外部***匹配的算法;
报文加密单元704,用于基于所述目标加密算法对所述第二请求报文进行加密处理,得到目标请求报文;
报文传输单元705,用于将所述目标请求报文发送至所述外部***。
本申请实施例中,由报文传输装置基于外部***的配置信息对第一请求报文进行格式转换,无需在物流平台和外部***开发对接代码,使物流平台和外部***开发对接代码而投入的开发成本降低至零,提高物流平台的稳定性,基于预先注入的多个初始加密算法中确定的目标加密算法对格式转换后的报文进行加密处理,可以在报文传输过程中实现外部***的私有鉴权。
在本申请一些实施例中,所述报文转换单元702具体用于:
基于所述配置信息,从预先生成的多个初始报文转换代码中确定目标报文转换代码;
基于所述目标报文转换代码对所述第一请求报文进行格式转换,得到第二请求报文。
在本申请一些实施例中,所述报文转换单元702具体还用于:
获取预先生成的多个初始报文转换代码分别对应的多个配置接口信息;
基于所述配置信息,从所述多个配置接口信息中筛选出候选接口信息,所述候选接口信息为所述多个配置接口信息中与所述配置信息匹配的信息;
将所述候选接口信息对应的初始报文转换代码,确定为所述目标报文转换代码。
在本申请一些实施例中,所述目标报文转换代码中包括所述外部***的加密信息,所述第一确定单元703具体用于:
获取预先注入的多个初始加密算法分别对应的多个初始算法标识;
基于所述加密信息,从所述多个初始算法标识中筛选出目标算法标识,所述目标算法标识为所述多个初始算法标识中与所述加密信息匹配的标识;
将所述目标算法标识对应的初始加密算法,确定为目标加密算法。
在本申请一些实施例中,所述报文传输装置700还包括:
报文接收单元,用于接收所述外部***基于所述目标请求报文返回的初始响应报文。
在本申请一些实施例中,所述报文转换单元702还用于:
基于所述目标报文转换代码对所述初始响应报文进行格式转换,得到目标响应报文。
在本申请一些实施例中,所述报文传输单元705还用于:
将所述目标响应报文发送至所述物流平台。
在本申请一些实施例中,所述第一请求报文包括多个初始报文参数名及所述多个初始报文参数名对应的多个初始报文参数值,所述报文传输装置700还包括:
第二确定单元,用于基于所述多个初始报文参数值,确定所述多个初始报文参数名中是否存在候选报文参数名,所述候选报文参数名为所述多个初始报文参数名中不存在对应的初始报文参数值的参数名;
参数获取单元,用于当所述多个初始报文参数名中存在候选报文参数名时,调用预先注入的参数获取函数从所述物流平台中获取所述候选报文参数名对应的候选报文参数值;
参数补齐单元,用于基于所述候选报文参数值,对所述多个初始报文参数值进行补齐。
在本申请一些实施例中,所述报文传输装置700还包括:
初始化单元,用于将所述目标报文转换代码、所述多个初始加密算法及所述参数获取函数注入预设的执行环境,以实现所述执行环境的初始化,所述执行环境为预先设置的所述目标报文转换代码的运行环境。
本申请实施例还提供一种计算机设备,其集成了本申请实施例所提供的任一种报文传输装置,所述计算机设备包括:
一个或多个处理器;
存储器;以及
一个或多个应用程序,其中所述一个或多个应用程序被存储于所述存储器中,并配置为由所述处理器执行上述报文传输方法实施例中任一实施例中所述的报文传输方法中的步骤。
本申请实施例还提供一种计算机设备,其集成了本申请实施例所提供的任一种报文传输装置。如图5所示,其示出了本申请实施例所涉及的计算机设备的结构示意图,具体来讲:
该计算机设备可以包括一个或者一个以上处理核心的处理器901、一个或一个以上计算机可读存储介质的存储器902、电源903和输入单元904等部件。本领域技术人员可以理解,图5中示出的计算机设备结构并不构成对计算机设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:
处理器901是该计算机设备的控制中心,利用各种接口和线路连接整个计算机设备的各个部分,通过运行或执行存储在存储器902内的软件程序和/或模块,以及调用存储在存储器902内的数据,执行计算机设备的各种功能和处理数据,从而对计算机设备进行整体监控。可选的,处理器901可包括一个或多个处理核心;优选的,处理器901可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作***、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器901中。
存储器902可用于存储软件程序以及模块,处理器901通过运行存储在存储器902的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器902可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作***、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据计算机设备的使用所创建的数据等。此外,存储器902可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器902还可以包括存储器控制器,以提供处理器901对存储器902的访问。
计算机设备还包括给各个部件供电的电源903,优选的,电源903可以通过电源管理***与处理器901逻辑相连,从而通过电源管理***实现管理充电、放电、以及功耗管理等功能。电源903还可以包括一个或一个以上的直流或交流电源、再充电***、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
该计算机设备还可包括输入单元904,该输入单元904可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。
尽管未示出,计算机设备还可以包括显示单元等,在此不再赘述。具体在本实施例中,计算机设备中的处理器901会按照如下的指令,将一个或一个以上的应用程序的进程对应的可执行文件加载到存储器902中,并由处理器901来运行存储在存储器902中的应用程序,从而实现各种功能,如下:
获取物流平台发送的针对外部***的请求数据,所述请求数据中包括第一请求报文及所述外部***的配置信息;
基于所述配置信息对所述第一请求报文进行格式转换,得到第二请求报文;
从预先注入的多个初始加密算法中确定目标加密算法,所述目标加密算法为所述多个初始加密算法中与所述外部***匹配的算法;
基于所述目标加密算法对所述第二请求报文进行加密处理,得到目标请求报文;
将所述目标请求报文发送至所述外部***。
本领域普通技术人员可以理解,上述实施例的各种方法中的全部或部分步骤可以通过指令来完成,或通过指令控制相关的硬件来完成,该指令可以存储于一计算机可读存储介质中,并由处理器进行加载和执行。
为此,本申请实施例提供一种计算机可读存储介质,该存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取记忆体(RAM,Random Access Memory)、磁盘或光盘等。其上存储有计算机程序,所述计算机程序被处理器进行加载,以执行本申请实施例所提供的任一种报文传输方法中的步骤。例如,所述计算机程序被处理器进行加载可以执行如下步骤:
获取物流平台发送的针对外部***的请求数据,所述请求数据中包括第一请求报文及所述外部***的配置信息;
基于所述配置信息对所述第一请求报文进行格式转换,得到第二请求报文;
从预先注入的多个初始加密算法中确定目标加密算法,所述目标加密算法为所述多个初始加密算法中与所述外部***匹配的算法;
基于所述目标加密算法对所述第二请求报文进行加密处理,得到目标请求报文;
将所述目标请求报文发送至所述外部***。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见上文针对其他实施例的详细描述,此处不再赘述。
具体实施时,以上各个单元或结构可以作为独立的实体来实现,也可以进行任意组合,作为同一或若干个实体来实现,以上各个单元或结构的具体实施可参见前面的方法实施例,在此不再赘述。
以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
以上对本申请实施例所提供的一种报文传输方法、装置、计算机设备及存储介质进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
Claims (10)
1.一种报文传输方法,其特征在于,所述报文传输方法应用于报文传输装置,所述报文传输装置与物流平台和外部***分别通信连接,所述报文传输方法包括:
获取所述物流平台发送的针对所述外部***的请求数据,所述请求数据中包括第一请求报文及所述外部***的配置信息;
基于所述配置信息对所述第一请求报文进行格式转换,得到第二请求报文;
从预先注入的多个初始加密算法中确定目标加密算法,所述目标加密算法为所述多个初始加密算法中与所述外部***匹配的算法;
基于所述目标加密算法对所述第二请求报文进行加密处理,得到目标请求报文;
将所述目标请求报文发送至所述外部***。
2.根据权利要求1所述的报文传输方法,其特征在于,所述基于所述配置信息对所述第一请求报文进行格式转换,得到第二请求报文,包括:
基于所述配置信息,从预先生成的多个初始报文转换代码中确定目标报文转换代码;
基于所述目标报文转换代码对所述第一请求报文进行格式转换,得到第二请求报文。
3.根据权利要求2所述的报文传输方法,其特征在于,所述基于所述配置信息,从预先生成的多个初始报文转换代码中确定目标报文转换代码,包括:
获取预先生成的多个初始报文转换代码分别对应的多个配置接口信息;
基于所述配置信息,从所述多个配置接口信息中筛选出候选接口信息,所述候选接口信息为所述多个配置接口信息中与所述配置信息匹配的信息;
将所述候选接口信息对应的初始报文转换代码,确定为所述目标报文转换代码。
4.根据权利要求2所述的报文传输方法,其特征在于,所述目标报文转换代码中包括所述外部***的加密信息,所述从预先注入的多个初始加密算法中确定目标加密算法,包括:
获取预先注入的多个初始加密算法分别对应的多个初始算法标识;
基于所述加密信息,从所述多个初始算法标识中筛选出目标算法标识,所述目标算法标识为所述多个初始算法标识中与所述加密信息匹配的标识;
将所述目标算法标识对应的初始加密算法,确定为目标加密算法。
5.根据权利要求2所述的报文传输方法,其特征在于,所述将所述目标请求报文发送至所述外部***之后,所述方法还包括:
接收所述外部***基于所述目标请求报文返回的初始响应报文;
基于所述目标报文转换代码对所述初始响应报文进行格式转换,得到目标响应报文;
将所述目标响应报文发送至所述物流平台。
6.根据权利要求2所述的报文传输方法,其特征在于,所述第一请求报文包括多个初始报文参数名及所述多个初始报文参数名对应的多个初始报文参数值,所述基于所述配置信息对所述第一请求报文进行格式转换,得到第二请求报文之前,所述方法还包括:
基于所述多个初始报文参数值,确定所述多个初始报文参数名中是否存在候选报文参数名,所述候选报文参数名为所述多个初始报文参数名中不存在对应的初始报文参数值的参数名;
当所述多个初始报文参数名中存在候选报文参数名时,调用预先注入的参数获取函数从所述物流平台中获取所述候选报文参数名对应的候选报文参数值;
基于所述候选报文参数值,对所述多个初始报文参数值进行补齐。
7.根据权利要求6所述的报文传输方法,其特征在于,所述基于所述目标报文转换代码对所述第一请求报文进行格式转换,得到第二请求报文之前,所述方法还包括:
将所述目标报文转换代码、所述多个初始加密算法及所述参数获取函数注入预设的执行环境,以实现所述执行环境的初始化,所述执行环境为预先设置的所述目标报文转换代码的运行环境。
8.一种报文传输装置,其特征在于,所述报文传输装置与物流平台和外部***分别通信连接,所述报文传输装置包括:
数据获取单元,用于获取所述物流平台发送的针对所述外部***的请求数据,所述请求数据中包括第一请求报文及所述外部***的配置信息;
报文转换单元,用于基于所述配置信息对所述第一请求报文进行格式转换,得到第二请求报文;
第一确定单元,用于从预先注入的多个初始加密算法中确定目标加密算法,所述目标加密算法为所述多个初始加密算法中与所述外部***匹配的算法;
报文加密单元,用于基于所述目标加密算法对所述第二请求报文进行加密处理,得到目标请求报文;
报文传输单元,用于将所述目标请求报文发送至所述外部***。
9.一种计算机设备,其特征在于,所述计算机设备包括:
一个或多个处理器;
存储器;以及
一个或多个应用程序,其中所述一个或多个应用程序被存储于所述存储器中,并配置为由所述处理器执行以实现权利要求1至7中任一项所述的报文传输方法。
10.一种计算机可读存储介质,其特征在于,其上存储有计算机程序,所述计算机程序被处理器进行加载,以执行权利要求1至7任一项所述的报文传输方法中的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211338995.3A CN117997978A (zh) | 2022-10-28 | 2022-10-28 | 报文传输方法、装置、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211338995.3A CN117997978A (zh) | 2022-10-28 | 2022-10-28 | 报文传输方法、装置、计算机设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117997978A true CN117997978A (zh) | 2024-05-07 |
Family
ID=90900006
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211338995.3A Pending CN117997978A (zh) | 2022-10-28 | 2022-10-28 | 报文传输方法、装置、计算机设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117997978A (zh) |
-
2022
- 2022-10-28 CN CN202211338995.3A patent/CN117997978A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3639465B1 (en) | Improved hardware security module management | |
US20210174425A1 (en) | Method for registering customized device, server, and terminal | |
WO2018177124A1 (zh) | 业务处理方法、装置、数据共享***及存储介质 | |
CN109976667B (zh) | 一种镜像管理方法、装置及*** | |
CN103038788B (zh) | 提供多个网络资源 | |
CN105900466B (zh) | 消息处理方法及装置 | |
CN102255887B (zh) | 对应多移动装置的线上服务的提供方法与*** | |
US10050899B2 (en) | Data processing method, apparatus, client, server and system | |
US20150113113A1 (en) | Application takeover method and system, mobile terminal, and server | |
CN110825479A (zh) | 页面处理方法、装置、终端设备、服务器和存储介质 | |
CN103095824B (zh) | 文件上传控制方法及*** | |
US20140105399A1 (en) | Method for providing application service | |
CN112346751B (zh) | 应用程序的安装方法、装置、电子设备和存储介质 | |
CN112995239B (zh) | 一种数据处理方法和装置 | |
CN104580177A (zh) | 资源提供方法、装置和*** | |
CN115052041B (zh) | 渠道标识分配方法、装置、设备和存储介质 | |
WO2009102114A2 (en) | Terminal and method for identifying contents | |
CN117997978A (zh) | 报文传输方法、装置、计算机设备及存储介质 | |
CN112995932B (zh) | 基于哈希算法的短信链路监控方法、装置、设备及介质 | |
CN116070290A (zh) | 设备连接方法、装置、电子设备和计算机可读存储介质 | |
CN113746909A (zh) | 网络连接方法、装置、电子设备和计算机可读存储介质 | |
CN114513307B (zh) | 新客户验证方法、装置、设备和存储介质 | |
CN113806801B (zh) | 交易信息上链方法、装置、计算机设备及存储介质 | |
CN108881107B (zh) | 一种分布式资源配给方法、装置以及*** | |
CN115102924B (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 |