服务器、报文处理方法和计算机可读存储介质与流程

文档序号:16582287发布日期:2019-01-14 18:04阅读:118来源:国知局
服务器、报文处理方法和计算机可读存储介质与流程

本发明涉及通信技术领域,特别涉及一种服务器、报文处理方法和计算机可读存储介质。



背景技术:

现有的电子商务平台(即业务请求方)在工作时,需要调用银行、第三方支付公司等金融机构(即业务处理方)进行业务处理,在调用一金融机构进行业务处理之前,该电子商务平台与该金融机构之间需进行网关接口对接,网关接口对接时主要涉及网关接口报文处理方式的定义,现有的定义网关接口报文处理方式的方法是:根据金融机构网关接口的数据处理逻辑在网关接口代理层编写对应的代码以实现网关接口报文的组装、网关接口返回报文的解析以及网关接口的调用等。该方法的缺陷在于,当金融机构接口的数据处理逻辑发生变化时,需要重新修改代码并重启业务请求方服务器。



技术实现要素:

本发明的主要目的是提供一种服务器、报文处理方法和计算机可读存储介质,旨在解决在业务处理方网关接口的数据处理逻辑发生变化时,需重新修改代码并重启业务请求方服务器的问题。

为实现上述目的,本发明提出的一种服务器,所述服务器包括存储器和处理器,所述存储器上存储有报文处理程序,所述报文处理程序被所述处理器执行时实现如下步骤:

获取步骤:在接收到预设第一类型业务请求指令时,获取该项预设第一类型业务的业务信息;

第一查询步骤:根据获取的所述业务信息中的业务处理方服务标识信息及预先确定的所述业务处理方服务标识信息与配置信息之间的映射关系,查询所述预设第一类型业务对应的配置信息;

第二查询步骤:根据获取的所述业务信息中的业务处理方服务标识信息及预先确定的所述业务处理方服务标识信息与网关接口信息之间的映射关系,查询所述预设第一类型业务对应的网关接口信息;

组装步骤:根据所述业务信息及所述配置信息,组装预设第一类型业务请求报文;

发送步骤:将组装后的所述预设第一类型业务请求报文发送至查询到的所述网关接口信息对应的业务请求方网关接口,供所述业务请求方网关接口将所述预设第一类型业务请求报文发送至对应的业务处理方网关接口。

优选地,所述第一查询步骤包括:

根据预先确定的所述业务处理方服务标识信息与配置信息标识符之间的映射关系,查询所述业务信息中的业务处理方服务标识信息对应的配置信息标识符;

根据预先确定的所述配置信息标识符与配置信息之间的映射关系,确定查询到的所述配置信息标识符对应的配置信息,所述配置信息即为所述预设第一类型业务对应的配置信息。

优选地,所述获取步骤包括:

提取所述预设第一类型业务请求指令中的业务请求信息,根据所述业务请求信息及预先确定的选择规则在预先确定的多条业务通道中选择一最优业务通道;

获取所述最优业务通道的业务通道信息,并将所述业务请求信息及业务通道信息作为所述预设第一类型业务的业务信息。

优选地,所述处理器执行所述报文处理程序,在所述发送步骤之后,还实现以下步骤:

接收所述业务请求方网关接口返回的预设第一类型业务返回报文,且根据查询到的所述配置信息,解析所述预设第一类型业务返回报文。

优选地,所述处理器执行所述报文处理程序,在所述发送步骤之后,还实现以下步骤:

当在预设时长内未接收到所述预设第一类型业务返回报文时,启动预设第二类型业务,所述预设第二类型业务包括查询业务;

当启动的所述预设第二类型业务为查询业务时,生成查询业务标识信息,并获取待查询预设第一类型业务请求报文对应的业务信息,并从所述业务信息中提取业务处理方服务标识信息及业务标识信息作为查询业务信息;

根据所述业务处理方服务标识信息、查询业务标识信息及预先确定的所述业务处理方服务标识信息、查询业务标识信息及配置信息三者之间的映射关系,获取所述查询业务对应的配置信息;

根据所述业务处理方服务标识信息、查询业务标识信息及预先确定的所述业务处理方服务标识信息、查询业务标识信息及网关接口信息三者之间的映射关系,获取所述查询业务信息对应的网关接口信息;

根据所述查询业务信息及所述配置信息,组装查询请求报文,并将组装后的所述查询请求报文发送至获取的所述网关接口信息对应的业务请求方网关接口,供所述业务请求方网关接口将所述查询请求报文发送至对应的业务处理方网关接口;

接收所述业务请求方网关接口返回的查询返回报文,且根据所述配置信息,解析所述查询返回报文,以获得查询结果。

此外,为实现上述目的,本发明还提出一种报文处理方法,其特征在于,该方法包括:

获取步骤:在接收到预设第一类型业务请求指令时,获取该项预设第一类型业务的业务信息;

第一查询步骤:根据获取的所述业务信息中的业务处理方服务标识信息及预先确定的所述业务处理方服务标识信息与配置信息之间的映射关系,查询所述预设第一类型业务对应的配置信息;

第二查询步骤:根据获取的所述业务信息中的业务处理方服务标识信息及预先确定的所述业务处理方服务标识信息与网关接口信息之间的映射关系,查询所述预设第一类型业务对应的网关接口信息;

组装步骤:根据所述业务信息及所述配置信息,组装预设第一类型业务请求报文;

发送步骤:将组装后的所述预设第一类型业务请求报文发送至查询到的所述网关接口信息对应的业务请求方网关接口,供所述业务请求方网关接口将所述预设第一类型业务请求报文发送至对应的业务处理方网关接口。

优选地,所述获取步骤包括:

提取所述预设第一类型业务请求指令中的业务请求信息,根据所述业务请求信息及预先确定的选择规则在预先确定的多条业务通道中选择一最优业务通道;

获取所述最优业务通道的业务通道信息,并将所述业务请求信息及业务通道信息作为所述预设第一类型业务的业务信息。

优选地,在所述发送步骤之后,该方法还包括:

接收所述业务请求方网关接口返回的预设第一类型业务返回报文,且根据查询到的所述配置信息,解析所述预设第一类型业务返回报文。

优选地,在所述发送步骤之后,该方法还包括:

当在预设时长内未接收到所述预设第一类型业务返回报文时,启动预设第二类型业务,所述预设第二类型业务包括查询业务;

当启动的所述预设第二类型业务为查询业务时,生成查询业务标识信息,并获取待查询预设第一类型业务请求报文对应的业务信息,并从所述业务信息中提取业务处理方服务标识信息及业务标识信息作为查询业务信息;

根据所述业务处理方服务标识信息、查询业务标识信息及预先确定的所述业务处理方服务标识信息、查询业务标识信息及配置信息三者之间的映射关系,获取所述查询业务对应的配置信息;

根据所述业务处理方服务标识信息、查询业务标识信息及预先确定的所述业务处理方服务标识信息、查询业务标识信息及网关接口信息三者之间的映射关系,获取所述查询业务信息对应的网关接口信息;

根据所述查询业务信息及所述配置信息,组装查询请求报文,并将组装后的所述查询请求报文发送至获取的所述网关接口信息对应的业务请求方网关接口,供所述业务请求方网关接口将所述查询请求报文发送至对应的业务处理方网关接口;

接收所述业务请求方网关接口返回的查询返回报文,且根据所述配置信息,解析所述查询返回报文,以获得查询结果。

此外,为实现上述目的,本发明还提出一种计算机可读存储介质,所述计算机可读存储介质存储有报文处理程序,所述报文处理程序可被至少一个处理器执行,以使所述至少一个处理器执行如上述任一项所述的报文处理方法的步骤。

本发明获取预设第一类型业务的业务信息,根据该项预设第一类型业务的业务信息查询该项第一类型业务对应的配置信息及网关接口信息,根据业务信息及配置信息,组装预设第一类型业务请求报文,并将组装后的预设第一类型业务请求报文发送至对应的网关接口。相较于现有技术,本发明在与业务处理方进行接口对接时,根据业务处理方的网关接口数据处理逻辑设置配置信息,当业务请求方需要调用业务处理方进行业务处理时,根据该配置信息组装、解析报文以及调用网关接口。本发明在业务处理方的网关接口数据处理逻辑发生变化时,无需修改代码及重启服务器,仅需对相应的配置信息进行修改,修改后的配置信息一旦保存,则立即生效,在不影响业务请求方系统正常运行的前提下,提高了系统维护效率。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图示出的结构获得其他的附图。

图1为本发明各个实施例一可选的应用环境示意图;

图2为本发明报文处理程序第一、第二、第三实施例的运行环境示意图;

图3为本发明报文处理程序第一实施例的程序模块图;

图4为图3中第一获取模块的细化程序模块图;

图5为图3中第一查询模块的细化程序模块图;

图6为本发明报文处理程序第二实施例的程序模块图;

图7为本发明接口报文报文处理程序第三实施例的程序模块图

图8为本发明报文处理方法第一实施例的流程示意图;

图9为图8中步骤s10的细化流程示意图;

图10为图8中步骤s20的细化流程示意图;

图11为本发明报文处理方法第二实施例的流程示意图;

图12为本发明报文处理方法第三实施例的流程示意图。

本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

具体实施方式

以下结合附图对本发明的原理和特征进行描述,所举实例只用于解释本发明,并非用于限定本发明的范围。

参阅图1所示,是本发明各个实施例一可选的应用环境示意图。

在本实施例中,本发明可应用于包括,但不仅限于,服务器1、多个客户端2、多个业务请求方网关接口3、多个业务处理方网关接口4、业务处理方服务器5的应用环境中。服务器1分别与多个客户端2及多个业务请求方网关接口通信连接,且各业务请求方网关接口3与对应的业务处理方网关接口4通信连接,多个业务处理方网关接口4与业务处理方服务器5通信连接。

所述客户端2为业务请求方的客户端,该客户端2用于提供用户操作界面,并将用户触发的预设第一类型业务请求指令发送至服务器1处理,且接收服务器1返回的业务处理结果。

所述服务器1为业务请求方的服务器,该服务器1用于运行报文处理程序以实现本发明报文处理方法的步骤。

所述业务请求方网关接口3用于接收服务器1发送的报文,并将该报文发送至对应的业务处理方网关接口4,所述业务请求方网关接口3还用于接收业务处理方网关接口4返回的报文,并将该返回的报文发送至业务请求方网关接口3。

所述业务处理方网关接口4用于接收业务请求方网关接口3发送的报文,并将该报文解析成业务处理方服务器5可读的数据,所述业务处理方网关接口4还用于将业务处理方服务器5发送的数据组装成报文,并发送至对应的业务请求方网关接口3。

所述业务处理方服务器5用于接收业务处理方网关接口4发送的数据,根据该数据进行业务处理,并将业务处理的结果返回值业务处理方网关接口4。

至此,己经详细介绍了本发明各个实施例的应用环境和相关设备的硬件结构和功能。下面,将基于上述应用环境和相关设备,提出本发明的各个实施例。

本发明提出一种报文处理程序。

请参阅图2,是本发明报文处理程序10第一实施例的运行环境示意图。

在本实施例中,报文处理程序10安装并运行于服务器1中。服务器1是一种能够按照事先设定或者存储的指令,自动进行计算和/或信息处理的设备。该服务器1可包括,但不仅限于,存储器11、处理器12及显示器13。图2仅示出了具有组件11-13的服务器1,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。

存储器11在一些实施例中可以是服务器1的内部存储单元,例如该服务器1的硬盘或内存。存储器11在另一些实施例中也可以是服务器1的外部存储设备,例如服务器1上配备的插接式硬盘,智能存储卡(smartmediacard,smc),安全数字(securedigital,sd)卡,闪存卡(flashcard)等。进一步地,存储器11还可以既包括服务器1的内部存储单元也包括外部存储设备。存储器11用于存储安装于服务器1的应用软件及各类数据,例如报文处理程序10的程序代码等。存储器11还可以用于暂时地存储已经输出或者将要输出的数据。

处理器12在一些实施例中可以是一中央处理器(centralprocessingunit,cpu),微处理器或其他数据处理芯片,用于运行存储器11中存储的程序代码或处理数据,例如执行报文处理程序10等。

显示器13在一些实施例中可以是led显示器、液晶显示器、触控式液晶显示器以及oled(organiclight-emittingdiode,有机发光二极管)触摸器等。显示器13用于显示在服务器1中处理的信息以及用于显示可视化的用户界面。服务器1的部件11-13通过程序总线相互通信。

请参阅图3,是本发明报文处理程序10第一实施例的程序模块图。在本实施例中,报文处理程序10可以被分割成一个或多个模块,一个或者多个模块被存储于存储器11中,并由一个或多个处理器(本实施例为处理器12)所执行,以完成本发明。例如,在图3中,报文处理程序10可以被分割成第一获取模块101、第一查询模块102、第二查询模块103、组装模块104及发送模块105。本发明所称的模块是指能够完成特定功能的一系列计算机程序指令段,比程序更适合于描述报文处理程序10在服务器1中的执行过程,其中:

第一获取模块101,用于在接收到预设第一类型业务请求指令时,获取该项预设第一类型业务的业务信息。

具体地,上述预设第一类型业务请求指令可由用户通过客户端发起,例如,用户需要通过业务处理方支付,当跳转至支付页面时,触发该预设第一类型业务请求。

上述预设第一类型业务包括但不限于:代收业务、代付业务及鉴权业务。

所谓代收业务是指基于持卡人与商户(例如,业务请求方运营的电子商务平台)签订业务委托协议,许可商户根据协议约定,向持卡人指定账户请求并完成指定款项支付的业务,用于实现基于约定用途下的持卡人账户资金向商户账户定向划转。

所谓代付业务是指商户(例如,业务请求方运营的电子商务平台)从自身单位结算账户向持卡人指定银行卡账户进行款项划付的业务,如保险理赔、基金分红、代付货款等。

所谓鉴权业务是指业务处理方验证用户是否拥有访问系统权利的业务。

参照图4,所述第一获取模块101包括选择单元1011、获取单元1012,其中:

选择单元1011,用于提取所述预设第一类型业务请求指令中的业务请求信息,根据所述业务请求信息及预先确定的选择规则在预先确定的多条业务通道中选择一最优业务通道。

具体地,上述业务请求信息包括业务类型、业务标识信息、业务内容信息。

其中,所述业务类型包括代收业务、代付业务及鉴权业务。

所述业务标识信息包括业务编号,例如,订单编号等。

上述业务内容信息基于业务类型的不同有所不同,例如若业务类型为代收业务或者代付业务,则业务内容信息包括支付方信息、收款方信息、交易金额数量等;若业务类型为鉴权业务,则业务内容信息包括用户身份信息、银行卡信息等。

上述业务通道是根据业务处理方提供的服务划分的业务处理链路。例如,银联代收通道、银联代付通道、银联鉴权通道、银行a代收通道、银行a代付通道、银行a鉴权通道等。

上述业务处理方提供的服务即为该业务处理方可处理的业务。

在除本实施例以外的其他实施例中,还可根据具体的应用场景划分业务通道,本发明对此不作限定。

优选地,本实施例中上述预先确定的选择规则包括:

首先,根据所述业务请求信息,确定支持该项业务的业务通道作为待选业务通道。

一业务通道是否支持该项预设第一类型业务的判断方法如下:

根据所述业务类型,判断该业务通道是否拥有处理该项预设第一类型业务的权限,若否,则判定该业务通道不支持该项预设第一类型业务,若是,则继续判断该业务通道是否开启(例如,一些通道可能故障,则该通道关闭)。

当所述预设第一类型业务为鉴权业务时,若该业务通道开启,则判定该业务通道支持该项预设第一类型业务,若该业务通道未开启,则判定该业务通道不支持该项预设第一类型业务。

当所述预设第一类型业务为代收业务或者代付业务时,根据所述业务内容信息中的交易金额数量,判断该开启的业务通道是否满足预设的限额条件(例如,判断该开启的业务通道当日已处理交易金额总量加上所述业务内容信息中的交易金额数量得到的新的交易金额总量是否未超过预设阈值),若满足,则判定该业务通道支持该项预设第一类型业务的业务通道,若不满足,则判定该业务通道不支持该项预设第一类型业务。

接着,基于各所述待选业务通道的排序参数对所述待选业务通道进行排序处理,并输出排序结果。

上述排序参数包括服务费率、业务时效(即业务处理方完成代收业务或者代付业务所需时间)、优先级等。可根据需求对该排序参数进行设定,并不限于上述列举的内容。

上述基于各所述待选业务通道的排序参数对所述待选业务通道进行排序处理的步骤,具体包括:

基于优先级由高到低的顺序,将所述待选业务通道进行排序。

将相同优先级的待选业务通道基于服务费率由低到高的顺序进行排序。

将优先级及支付费率均相同的待选业务通道基于业务时效由短到长的顺序进行排序,以得到待选业务通道由优到劣的排序结果。

上述的服务费率是指业务处理方向业务请求方收取的服务费率。且若业务类型为鉴权业务,则业务时效不作为排序参数。

最后,基于所述排序结果,将满足预设条件的待选业务通道作为最优业务通道。

上述预设条件可根据需要设置,例如,若所述排序结果为待选业务通道由优到劣的顺序排序的结果,则该预设条件为选择排序第一位的待选业务通道。

获取单元1012,用于获取所述最优业务通道的业务通道信息,并将所述业务请求信息及业务通道信息作为所述预设第一类型业务的业务信息。

优选地,本实施例中,上述最优业务通道的业务通道信息包括业务处理方服务标识信息,所谓业务处理方服务标识信息是指业务处理方提供的服务的标识信息,例如,银行a代收服务标识信息为001002。

在除本实施例以外的其他实施例中,上述最优业务通道的业务通道信息还可包括业务处理方机构标识信息,例如,银行a机构标识信息为001。

第一查询模块102,用于根据获取的所述业务信息中的业务处理方服务标识信息及预先确定的所述业务处理方服务标识信息与配置信息之间的映射关系,查询所述预设第一类型业务对应的配置信息。

具体地,上述配置信息是预先根据业务处理方的网关接口数据处理逻辑设置的。

参照图5,优选地,本实施例中,上述第一查询模块102包括第一查询单元1021、第二查询单元1022,其中:

第一查询单元1021,用于根据预先确定的所述业务处理方服务标识信息与配置信息标识符之间的映射关系,查询所述业务信息中的业务处理方服务标识信息对应的配置信息标识符(例如,配置信息id)。

所述业务处理方服务标识信息对应的配置信息标识符即为所述预设第一类型业务对应的配置信息标识符。

上述业务处理方服务标识信息与配置信息标识符之间的映射关系可存储于对应的映射关系表中。

第二查询单元1022,用于根据预先确定的所述配置信息标识符与配置信息之间的映射关系,确定查询到的所述配置信息标识符对应的配置信息,所述配置信息即为所述预设第一类型业务对应的配置信息。

具体地,所述配置信息标识符与配置信息之间的映射关系可存储于对应的映射关系表中。

此外,参照图在除本实施例以外的其他实施例中,上述第一查询单元1021、第二查询单元1022可由第三查询单元(图中未示出)替换,所述第三查询单元用于:

根据获取的业务信息中的业务处理方服务标识信息及预先确定的所述业务处理方服务标识信息、配置信息标识符及配置信息三者之间的映射关系,查询所述业务处理方服务标识信息对应的配置信息,即得到所述预设第一类型业务对应的配置信息。

优选地,本实施例中,报文处理程序10被处理器12执行时,在所述根据获取的所述业务信息中的业务处理方服务标识信息及预先确定的所述业务处理方服务标识信息与配置信息之间的映射关系,查询所述预设第一类型业务对应的配置信息的步骤之前,还实现如下步骤:在内存中加载(即解析)所有配置信息,后续本发明报文处理所需的所有配置信息均可从内存中查询。此外,实时或定时侦测所述配置信息是否有更新,若是,则在内存中重新加载所述配置信息。

第二查询模块103,用于根据获取的所述业务信息中的业务处理方服务标识信息及预先确定的所述业务处理方服务标识信息与网关接口信息之间的映射关系,查询所述预设第一类型业务对应的网关接口信息。

具体地,上述网关接口是指业务请求方设置的网关接口,通常情况下,业务请求方为每一个业务处理方设置一个网关,且根据该业务处理方提供的各项服务设置多个网关接口。

上述网关接口信息包括网关接口标识符(例如,网关接口id)。

上述业务处理方服务标识信息与网关接口信息之间的映射关系可与上述业务处理方服务标识信息与配置信息标识符之间的映射关系存储于同一映射关系表中,或者,上述业务处理方服务标识信息与网关接口信息之间的映射关系可与上述业务处理方服务标识信息与配置信息标识符之间的映射关系分别存储于不同的映射关系表中。

组装模块104,用于根据所述业务信息及所述配置信息,组装预设第一类型业务请求报文。

上述配置信息根据业务处理方的网关接口数据处理逻辑定义了预设第一类型业务请求报文的组装模板,因此,基于该组装模板,将业务信息作为报文内容进行组装,以便业务处理方在接收到该第一类型业务请求报文时能直接读取该预设第一类型业务请求报文。

发送模块105,用于将组装后的所述预设第一类型业务请求报文发送至查询到的所述网关接口信息对应的业务请求方网关接口,以供所述业务请求方网关接口将所述预设第一类型业务请求报文发送至对应的业务处理方网关接口。

具体地,首先,将组装后的预设第一类型业务请求报文发送至查询到的业务请求方网关接口,并将预设第一类型业务请求报文对应的业务信息进行存储处理(例如,存储于数据库中)。接着,由业务请求方网关接口将所述预设第一类型业务请求报文发送至对应的业务处理方网关接口,业务处理方网关接口在接收到该预设第一类型业务请求报文后,对该项预设第一类型业务进行处理。

本实施例获取预设第一类型业务的业务信息,根据该项预设第一类型业务的业务信息查询该项第一类型业务对应的配置信息及网关接口信息,根据业务信息及配置信息,组装预设第一类型业务请求报文,并将组装后的预设第一类型业务请求报文发送至对应的网关接口。相较于现有技术,本实施例在与业务处理方进行接口对接时,根据业务处理方的网关接口数据处理逻辑设置配置信息,当业务请求方需要调用业务处理方进行业务处理时,根据该配置信息组装、解析报文以及调用网关接口。本实施例在业务处理方的网关接口数据处理逻辑发生变化时,无需修改代码及重启服务器,仅需对相应的配置信息进行修改,修改后的配置信息一旦保存,则立即生效,在不影响业务请求方系统正常运行的前提下,提高了系统维护效率。

如图6所示,图6为本发明报文处理程序10第二实施例的程序模块图。

本实施例在第一实施例的基础上,该程序还包括接收模块106,接收模块106用于接收所述业务请求方网关接口返回的预设第一类型业务返回报文,且根据查询到的所述配置信息,解析所述预设第一类型业务返回报文。

具体地,业务处理方网关接口返回预设第一类型业务返回报文至对应的业务请求方网关接口,业务请求方网关接口返回该预设第一类型业务返回报文。由于所述配置信息中包含有根据服务处理方网关接口数据处理逻辑预先设置的返回报文字段的解析数据,因此,根据该配置信息,即可对预设第一类型业务返回报文进行解析。

若该预设第一类型业务返回报文中包含错误码,则根据预先确定的业务处理方式服务标识信息与错误码解析信息之间的映射关系,查找对应的错误码解析信息,并根据该查找到的错误码解析信息对所述错误码进行转义。

优选地,本实施例中,当所述预设第一类型业务的业务类型为代收业务或者代付业务时,报文处理程序10还包括更新模块(图中未示出),所述更新模块用于,根据所述业务请求信息中的交易金额数量,更新记录的支付方的每日交易限额数据(从每日交易限额数据中扣减交易金额)。

所述更新模块还用于,当根据解析的预设第一类型业务返回报文确定代收业务失败或者代付业务失败时,更新记录的支付方的每日交易限额数据(从每日交易限额数据中回滚扣减的交易金额)。

如图7所示,图7为本发明报文处理程序10第三实施例的程序模块图。

本实施例在第一、第二实施例的基础上,该程序还包括启动模块107、查询业务模块108,其中:

启动模块107,用于当在预设时长内未接收到所述预设第一类型业务返回报文时,启动预设第二类型业务。

具体地,所述预设第二类型业务包括查询业务。

优选地,本实施例中该程序还包括查询业务模块108,查询业务模块108用于:

首先,当启动的所述预设第二类型业务为查询业务时,生成查询业务标识信息,并获取待查询预设第一类型业务请求报文对应的业务信息,并从所述业务信息中提取业务处理方服务标识信息及业务标识信息作为查询业务信息。

具体地,由于在待查询预设第一类型业务请求报文发送至服务请求方网关接口时,以将该待查询预设第一类型业务请求报文对应的业务信息进行存储处理,因此,仅需从存储空间中查找出该待查询预设第一类型业务请求报文对应的业务信息即可。

然后,根据所述业务处理方服务标识信息、查询业务标识信息及预先确定的所述业务处理方服务标识信息、查询业务标识信息及配置信息三者之间的映射关系,获取所述查询业务对应的配置信息。

具体地,根据业务处理方服务标识信息、查询业务标识信息及预先确定的所述业务处理方服务标识信息、查询业务标识信息及配置信息标识符三者之间的映射关系,查询所述查询业务对应的配置信息标识符(例如,配置信息id)。具体地,上述预先确定的所述业务处理方服务标识信息、查询业务标识信息及配置信息标识符三者之间的映射关系可存储于对应的映射关系表中。

根据查询到的所述配置信息标识符及预先确定的所述配置信息标识符与配置信息之间的映射关系,查询所述配置信息标识符对应的配置信息。查询得到的配置信息标识符对应的配置信息即为所述查询业务对应的配置信息。所述配置信息标识符与配置信息之间的映射关系可存储于对应的映射关系表中。

接着,根据所述业务处理方服务标识信息、查询业务标识信息及预先确定的所述业务处理方服务标识信息、查询业务标识信息及网关接口信息三者之间的映射关系,获取所述查询业务信息对应的网关接口信息。

上述预先确定的所述业务处理方服务标识信息、查询业务标识信息及网关接口信息三者之间的映射关系与上述预先确定的所述业务处理方服务标识信息、查询业务标识信息及配置信息标识符三者之间的映射关系可存储于同一映射关系表中,也可分别存储于不同的映射关系表中。

接着,根据所述查询业务信息及所述配置信息,组装查询请求报文,并将组装后的所述查询请求报文发送至获取的所述网关接口信息对应的业务请求方网关接口,供所述业务请求方网关接口将所述查询请求报文发送至对应的业务处理方网关接口。

具体地,由于上述配置信息根据业务处理方的网关接口数据处理逻辑定义了查询请求报文的组装模板,因此,基于该组装模板,将查询业务信息作为报文内容进行组装,以便业务处理方在接收到该查询请求报文时能直接读取该查询请求报文。

最后,接收所述业务请求方网关接口返回的查询返回报文,且根据所述配置信息,解析所述查询返回报文,以获得查询结果。

具体地,由于该配置信息中包含有根据服务处理方网关接口数据处理逻辑预先设置的查询返回报文字段的解析数据,因此,根据该配置信息,即可对查询返回报文进行解析,以获得查询结果。

本实施例当在预设时长内未接收到所述预设第一类型业务返回报文时,通过启动查询业务,可获知业务处理方当前处理预设第一类型业务的状态,从而根据该处理状态即使调整业务处理策略。

此外,本发明提出一种报文处理方法。

如图8所示,图8为本发明报文处理方法第一实施例的流程示意图。

本实施例中,该方法包括:

步骤s10,在接收到预设第一类型业务请求指令时,获取该项预设第一类型业务的业务信息。

具体地,上述预设第一类型业务请求指令可由用户通过客户端发起,例如,用户需要通过业务处理方支付,当跳转至支付页面时,触发该预设第一类型业务请求。

上述预设第一类型业务包括但不限于:代收业务、代付业务及鉴权业务。

所谓代收业务是指基于持卡人与商户(例如,业务请求方运营的电子商务平台)签订业务委托协议,许可商户根据协议约定,向持卡人指定账户请求并完成指定款项支付的业务,用于实现基于约定用途下的持卡人账户资金向商户账户定向划转。

所谓代付业务是指商户(例如,业务请求方运营的电子商务平台)从自身单位结算账户向持卡人指定银行卡账户进行款项划付的业务,如保险理赔、基金分红、代付货款等。

所谓鉴权业务是指业务处理方验证用户是否拥有访问系统权利的业务。

参照图9,所述步骤s10具体包括:

步骤s11,提取所述预设第一类型业务请求指令中的业务请求信息,根据所述业务请求信息及预先确定的选择规则在预先确定的多条业务通道中选择一最优业务通道。

具体地,上述业务请求信息包括业务类型、业务标识信息、业务内容信息。

其中,所述业务类型包括代收业务、代付业务及鉴权业务。

所述业务标识信息包括业务编号,例如,订单编号等。

上述业务内容信息基于业务类型不同有所不同,例如若业务类型为代收业务或者代付业务,则业务内容信息包括支付方信息、收款方信息、交易金额数量等;若业务类型为鉴权业务,则业务内容信息包括用户身份信息、银行卡信息等。

上述业务通道是根据业务处理方提供的服务划分的业务处理链路。例如,银联代收通道、银联代付通道、银联鉴权通道、银行a代收通道、银行a代付通道、银行a鉴权通道等。

上述业务处理方提供的服务即为该业务处理方可处理的业务。

在除本实施例以外的其他实施例中,还可根据具体的应用场景划分业务通道,本发明对此不作限定。

优选地,本实施例中上述预先确定的选择规则包括:

首先,根据所述业务请求信息,确定支持该项业务的业务通道作为待选业务通道。一业务通道是否支持该项预设第一类型业务的判断方法如下:

根据所述业务类型,判断该业务通道是否拥有处理该项预设第一类型业务的权限,若否,则判定该业务通道不支持该项预设第一类型业务,若是,则继续判断该业务通道是否开启(例如,一些通道可能故障,则该通道关闭)。

当所述预设第一类型业务为鉴权业务时,若该业务通道开启,则判定该业务通道支持该项预设第一类型业务,若该业务通道未开启,则判定该业务通道不支持该项预设第一类型业务。

当所述预设第一类型业务为代收业务或者代付业务时,根据所述业务内容信息中的交易金额数量,判断该开启的业务通道是否满足预设的限额条件(例如,判断该开启的业务通道当日已处理交易金额总量加上所述业务内容信息中的交易金额数量得到的新的交易金额总量是否未超过预设阈值),若满足,则判定该业务通道支持该项预设第一类型业务的业务通道,若不满足,则判定该业务通道不支持该项预设第一类型业务。

接着,基于各所述待选业务通道的排序参数对所述待选业务通道进行排序处理,并输出排序结果。

上述排序参数包括服务费率、业务时效(即业务处理方完成代收业务或者代付业务所需时间)、优先级等。可根据需求对该排序参数进行设定,并不限于上述列举的内容。

上述基于各所述待选业务通道的排序参数对所述待选业务通道进行排序处理的步骤,具体包括:

基于优先级由高到低的顺序,将所述待选业务通道进行排序。

将相同优先级的待选业务通道基于服务费率由低到高的顺序进行排序。

将优先级及支付费率均相同的待选业务通道基于业务时效由短到长的顺序进行排序,以得到待选业务通道由优到劣的排序结果。

上述的服务费率是指业务处理方向业务请求方收取的服务费率。且若业务类型为鉴权业务,则业务时效不作为排序参数。

最后,基于所述排序结果,将满足预设条件的待选业务通道作为最优业务通道。

上述预设条件可根据需要设置,例如,若所述排序结果为待选业务通道由优到劣的顺序排序的结果,则该预设条件为选择排序第一位的待选业务通道。

步骤s12,获取所述最优业务通道的业务通道信息,并将所述业务请求信息及业务通道信息作为所述预设第一类型业务的业务信息。

优选地,本实施例中,上述最优业务通道的业务通道信息包括业务处理方服务标识信息,所谓业务处理方服务标识信息是指业务处理方提供的服务的标识信息,例如,银行a代收服务标识信息为001002。

在除本实施例以外的其他实施例中,上述最优业务通道的业务通道信息还可包括业务处理方机构标识信息,例如,银行a机构标识信息为001。

步骤s20,根据获取的所述业务信息中的业务处理方服务标识信息及预先确定的所述业务处理方服务标识信息与配置信息之间的映射关系,查询所述预设第一类型业务对应的配置信息。

具体地,上述配置信息是预先根据业务处理方的网关接口数据处理逻辑设置的。

参照图10,优选地,本实施例中,上述步骤s20具体包括:

步骤s21,根据预先确定的所述业务处理方服务标识信息与配置信息标识符之间的映射关系,查询所述业务信息中的业务处理方服务标识信息对应的配置信息标识符(例如,配置信息id)。

所述业务处理方服务标识信息对应的配置信息标识符即为所述预设第一类型业务对应的配置信息标识符。

上述业务处理方服务标识信息与配置信息标识符之间的映射关系可存储于对应的映射关系表中。

步骤s22,根据预先确定的所述配置信息标识符与配置信息之间的映射关系,确定查询到的所述配置信息标识符对应的配置信息,所述配置信息即为所述预设第一类型业务对应的配置信息。

具体地,所述配置信息标识符与配置信息之间的映射关系可存储于对应的映射关系表中。

此外,在除本实施例以外的其他实施例中,上述步骤s21、s22可由如下步骤替换:

根据获取的业务信息中的业务处理方服务标识信息及预先确定的所述业务处理方服务标识信息、配置信息标识符及配置信息三者之间的映射关系,查询所述业务处理方服务标识信息对应的配置信息,即得到所述预设第一类型业务对应的配置信息。

优选地,本实施例中,在步骤s20之前,该方法还包括:在内存中加载(即解析)所有配置信息,后续本发明报文处理方法所需的所有配置信息均可从内存中查询。此外,实时或定时侦测所述配置信息是否有更新,若是,则在内存中重新加载所述配置信息。

步骤s30,根据获取的所述业务信息中的业务处理方服务标识信息及预先确定的所述业务处理方服务标识信息与网关接口信息之间的映射关系,查询所述预设第一类型业务对应的网关接口信息。

具体地,上述网关接口是指业务请求方设置的网关接口,通常情况下,业务请求方为每一个业务处理方设置一个网关,且根据该业务处理方提供的各项服务设置多个网关接口。

上述网关接口信息包括网关接口标识符(例如,网关接口id)。

上述业务处理方服务标识信息与网关接口信息之间的映射关系可与上述业务处理方服务标识信息与配置信息标识符之间的映射关系存储于同一映射关系表中,或者,上述业务处理方服务标识信息与网关接口信息之间的映射关系可与上述业务处理方服务标识信息与配置信息标识符之间的映射关系分别存储于不同的映射关系表中。

上述步骤s20与步骤s30可同时执行也可分别执行,且本发明对步骤s20及步骤s30的执行先后顺序不作限定。

步骤s40,根据所述业务信息及所述配置信息,组装预设第一类型业务请求报文。

上述配置信息根据业务处理方的网关接口数据处理逻辑定义了预设第一类型业务请求报文的组装模板,因此,基于该组装模板,将业务信息作为报文内容进行组装,以便业务处理方在接收到该第一类型业务请求报文时能直接读取该预设第一类型业务请求报文。

步骤s50,将组装后的所述预设第一类型业务请求报文发送至查询到的所述网关接口信息对应的业务请求方网关接口,以供所述业务请求方网关接口将所述预设第一类型业务请求报文发送至对应的业务处理方网关接口。

具体地,首先,将组装后的预设第一类型业务请求报文发送至查询到的业务请求方网关接口,并将预设第一类型业务请求报文对应的业务信息进行存储处理(例如,存储于数据库中)。接着,由业务请求方网关接口将所述预设第一类型业务请求报文发送至对应的业务处理方网关接口,业务处理方网关接口在接收到该预设第一类型业务请求报文后,对该项预设第一类型业务进行处理。

本实施例获取预设第一类型业务的业务信息,根据该项预设第一类型业务的业务信息查询该项第一类型业务对应的配置信息及网关接口信息,根据业务信息及配置信息,组装预设第一类型业务请求报文,并将组装后的预设第一类型业务请求报文发送至对应的网关接口。相较于现有技术,本实施例在与业务处理方进行接口对接时,根据业务处理方的网关接口数据处理逻辑设置配置信息,当业务请求方需要调用业务处理方进行业务处理时,根据该配置信息组装、解析报文以及调用网关接口。本实施例在业务处理方的网关接口数据处理逻辑发生变化时,无需修改代码及重启服务器,仅需对相应的配置信息进行修改,修改后的配置信息一旦保存,则立即生效,在不影响业务请求方系统正常运行的前提下,提高了系统维护效率。

如图11所示,图11为本发明报文处理方法第二实施例的流程示意图。

本实施例在第一实施例的基础上,该方法还包括:

步骤s60,接收所述业务请求方网关接口返回的预设第一类型业务返回报文,且根据查询到的所述配置信息,解析所述预设第一类型业务返回报文。

具体地,业务处理方网关接口返回预设第一类型业务返回报文至对应的业务请求方网关接口,业务请求方网关接口返回该预设第一类型业务返回报文。由于所述配置信息中包含有根据服务处理方网关接口数据处理逻辑预先设置的返回报文字段的解析数据,因此,根据该配置信息,即可对预设第一类型业务返回报文进行解析。

若该预设第一类型业务返回报文中包含错误码,则根据预先确定的业务处理方式服务标识信息与错误码解析信息之间的映射关系,查找对应的错误码解析信息,并根据该查找到的错误码解析信息对所述错误码进行转义。

优选地,本实施例中,当所述预设第一类型业务的业务类型为代收业务或者代付业务时,在步骤s50之前,还包括:

根据所述业务请求信息中的交易金额数量,更新记录的支付方的每日交易限额数据(从每日交易限额数据中扣减交易金额)。

当所述预设第一类型业务的业务类型为代收业务或者代付业务时,在步骤s60之后,还包括:

若根据解析的预设第一类型业务返回报文,确定代收业务失败或者代付业务失败,则更新记录的支付方的每日交易限额数据(从每日交易限额数据中回滚扣减的交易金额)。

如图12所示,图12为本发明报文处理方法第三实施例的流程示意图。

本实施例在第一、第二实施例的基础上,该方法还包括:

步骤s70,当在预设时长内未接收到所述预设第一类型业务返回报文时,启动预设第二类型业务。

具体地,所述预设第二类型业务包括查询业务。

优选地,本实施例中,在步骤s70之后,该方法还包括:

首先,当启动的所述预设第二类型业务为查询业务时,生成查询业务标识信息,并获取待查询预设第一类型业务请求报文对应的业务信息,并从所述业务信息中提取业务处理方服务标识信息及业务标识信息作为查询业务信息。

具体地,由于在待查询预设第一类型业务请求报文发送至服务请求方网关接口时,以将该待查询预设第一类型业务请求报文对应的业务信息进行存储处理,因此,在步骤s80中,仅需从存储空间中查找出该待查询预设第一类型业务请求报文对应的业务信息即可。

然后,根据所述业务处理方服务标识信息、查询业务标识信息及预先确定的所述业务处理方服务标识信息、查询业务标识信息及配置信息三者之间的映射关系,获取所述查询业务对应的配置信息。

具体地,根据业务处理方服务标识信息、查询业务标识信息及预先确定的所述业务处理方服务标识信息、查询业务标识信息及配置信息标识符三者之间的映射关系,查询所述查询业务对应的配置信息标识符(例如,配置信息id)。具体地,上述预先确定的所述业务处理方服务标识信息、查询业务标识信息及配置信息标识符三者之间的映射关系可存储于对应的映射关系表中。

根据查询到的所述配置信息标识符及预先确定的所述配置信息标识符与配置信息之间的映射关系,查询所述配置信息标识符对应的配置信息。查询得到的配置信息标识符对应的配置信息即为所述查询业务对应的配置信息。所述配置信息标识符与配置信息之间的映射关系可存储于对应的映射关系表中。

接着,根据所述业务处理方服务标识信息、查询业务标识信息及预先确定的所述业务处理方服务标识信息、查询业务标识信息及网关接口信息三者之间的映射关系,获取所述查询业务信息对应的网关接口信息。

上述预先确定的所述业务处理方服务标识信息、查询业务标识信息及网关接口信息三者之间的映射关系与上述预先确定的所述业务处理方服务标识信息、查询业务标识信息及配置信息标识符三者之间的映射关系可存储于同一映射关系表中,也可分别存储于不同的映射关系表中。

接着,根据所述查询业务信息及所述配置信息,组装查询请求报文,并将组装后的所述查询请求报文发送至获取的所述网关接口信息对应的业务请求方网关接口,供所述业务请求方网关接口将所述查询请求报文发送至对应的业务处理方网关接口。

具体地,由于上述配置信息根据业务处理方的网关接口数据处理逻辑定义了查询请求报文的组装模板,因此,基于该组装模板,将查询业务信息作为报文内容进行组装,以便业务处理方在接收到该查询请求报文时能直接读取该查询请求报文。

最后,接收所述业务请求方网关接口返回的查询返回报文,且根据所述配置信息,解析所述查询返回报文,以获得查询结果。

具体地,由于该配置信息中包含有根据服务处理方网关接口数据处理逻辑预先设置的查询返回报文字段的解析数据,因此,根据该配置信息,即可对查询返回报文进行解析,以获得查询结果。

本实施例当在预设时长内未接收到所述预设第一类型业务返回报文时,通过启动查询业务,可获知业务处理方当前处理预设第一类型业务的状态,从而根据该处理状态即使调整业务处理策略。

进一步地,本发明还提出一种计算机可读存储介质,所述计算机可读存储介质存储有报文处理程序,所述报文处理程序可被至少一个处理器执行,以使所述至少一个处理器执行上述任一实施例中的报文处理方法的步骤。

以上所述仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是在本发明的发明构思下,利用本发明说明书及附图内容所作的等效结构变换,或直接/间接运用在其他相关的技术领域均包括在本发明的专利保护范围内。

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