业务请求处理方法、装置、计算机设备和存储介质与流程

文档序号:23959583发布日期:2021-02-18 20:59阅读:62来源:国知局
业务请求处理方法、装置、计算机设备和存储介质与流程

[0001]
本申请涉及计算机技术领域,特别是涉及一种业务请求处理方法、装置、计算机设备和存储介质。


背景技术:

[0002]
随着互联网技术的发展,在很多情况下都需要对业务数据进行处理,例如进行账单的查询或者是对账单数据进行统计等。
[0003]
传统技术中,经常存在向业务处理端发送请求时,请求得不到响应的问题,导致需要重新配置终端的请求参数,业务请求的处理效率低。


技术实现要素:

[0004]
基于此,有必要针对上述技术问题,提供一种业务请求处理方法、装置、计算机设备和存储介质。
[0005]
一种业务请求处理方法,所述方法包括:接收业务请求发送端发送的第一业务请求;确定所述第一业务请求对应的目标业务处理方以及对应的业务类型,根据所述业务类型以及所述目标业务处理方获取对应的请求参数配置规则;根据所述请求参数配置规则配置得到目标请求参数,根据所述目标请求参数生成第二业务请求;向所述目标业务处理方对应的目标业务处理端发送所述第二业务请求;接收所述目标业务处理端返回的业务响应信息,所述业务响应信息是所述目标业务处理端响应于所述第二业务请求,根据所述目标请求参数进行业务处理得到的;根据所述业务类型对所述业务响应信息进行处理,得到标准响应信息;将所述标准响应信息发送至所述业务请求发送端。
[0006]
在一些实施例中,所述根据所述请求参数配置规则配置得到目标请求参数,根据所述目标请求参数生成第二业务请求包括:确定所述第一业务请求中缺失的参数对应的缺失参数类型,根据所述缺失参数类型获取对应类型的参数,作为目标请求参数;获取所述第一业务请求中的参数,作为第一请求参数;根据所述第一请求参数以及所述目标请求参数生成第二业务请求。
[0007]
在一些实施例中,所述根据所述第一请求参数以及所述目标请求参数生成第二业务请求包括:对所述第一请求参数进行标准化处理,得到标准化处理参数;根据所述标准化处理参数以及所述目标请求参数生成第二业务请求。
[0008]
在一些实施例中,所述根据所述缺失参数类型获取对应类型的参数,作为目标请求参数包括:获取所述业务请求发送端对应的所述缺失参数类型的历史响应参数,作为目标请求参数。
[0009]
在一些实施例中,所述请求参数配置规则包括目标参数类型;所述根据所述请求参数配置规则配置得到目标请求参数,根据所述目标请求参数生成第二业务请求包括:根据所述目标参数类型获取对应类型的参数,作为目标请求参数,根据所述目标请求参数生成第二业务请求。
[0010]
在一些实施例中,所述根据所述目标请求参数生成第二业务请求包括:确定与所述目标业务处理端之间的共享密钥;根据所述共享密钥对所述目标请求参数进行加密处理,得到加密后的目标请求参数,生成携带所述加密后的目标请求参数的第二业务请求。
[0011]
在一些实施例中,所述根据所述共享密钥对所述目标请求参数进行加密处理,得到加密后的目标请求参数包括:获取所述目标请求参数对应的目标参数特征;根据所述目标参数特征以及所述共享密钥生成动态密钥,利用所述动态密钥对目标请求参数进行加密处理,得到加密后的目标请求参数;所述向所述目标业务处理端发送所述第二业务请求包括:将携带所述目标参数特征以及所述加密后的目标请求参数的第二业务请求发送至目标业务处理端。
[0012]
在一些实施例中,所述确定与所述目标业务处理端之间的共享密钥包括:向所述目标业务处理端发送密钥参数协商请求,所述密钥参数协商请求携带第一哈希计算结果,所述第一哈希计算结果是根据第一参数类型标识进行哈希计算得到的;接收所述目标业务处理端返回的第二哈希计算结果,若确定所述第二哈希计算结果与所述第一哈希计算结果一致,则将所述第一参数类型标识作为密钥参数类型标识;获取所述密钥参数类型标识对应的目标密钥参数,根据所述目标密钥参数生成与所述目标业务处理端之间的共享密钥。
[0013]
一种业务请求处理装置,所述装置包括:第一业务请求接收模块,用于接收业务请求发送端发送的第一业务请求;请求参数配置规则获取模块,用于确定所述第一业务请求对应的目标业务处理方以及对应的业务类型,根据所述业务类型以及所述目标业务处理方获取对应的请求参数配置规则;第二业务请求生成模块,用于根据所述请求参数配置规则配置得到目标请求参数,根据所述目标请求参数生成第二业务请求;第二业务请求发送模块,用于向所述目标业务处理方对应的目标业务处理端发送所述第二业务请求;业务响应信息接收模块,用于接收所述目标业务处理端返回的业务响应信息,所述业务响应信息是所述目标业务处理端响应于所述第二业务请求,根据所述目标请求参数进行业务处理得到的;标准响应信息得到模块,用于根据所述业务类型对所述业务响应信息进行处理,得到标准响应信息;标准响应信息发送模块,用于将所述标准响应信息发送至所述业务请求发送端。
[0014]
在一些实施例中,所述第二业务请求生成模块包括:目标请求参数确定单元,用于确定所述第一业务请求中缺失的参数对应的缺失参数类型,根据所述缺失参数类型获取对应类型的参数,作为目标请求参数;第一请求参数获取单元,用于获取所述第一业务请求中的参数,作为第一请求参数;第二业务请求生成单元,用于根据所述第一请求参数以及所述目标请求参数生成第二业务请求。
[0015]
在一些实施例中,所述第二业务请求生成单元用于:对所述第一请求参数进行标准化处理,得到标准化处理参数;根据所述标准化处理参数以及所述目标请求参数生成第二业务请求。
[0016]
在一些实施例中,所述目标请求参数确定单元用于:获取所述业务请求发送端对应的所述缺失参数类型的历史响应参数,作为目标请求参数。
[0017]
在一些实施例中,所述请求参数配置规则包括目标参数类型;所述第二业务请求生成模块用于:根据所述目标参数类型获取对应类型的参数,作为目标请求参数,根据所述目标请求参数生成第二业务请求。
[0018]
在一些实施例中,所述第二业务请求生成模块包括:共享密钥确定单元,用于确定与所述目标业务处理端之间的共享密钥;加密单元,用于根据所述共享密钥对所述目标请求参数进行加密处理,得到加密后的目标请求参数,生成携带所述加密后的目标请求参数的第二业务请求。
[0019]
在一些实施例中,所述加密单元用于:获取所述目标请求参数对应的目标参数特征;根据所述目标参数特征以及所述共享密钥生成动态密钥,利用所述动态密钥对目标请求参数进行加密处理,得到加密后的目标请求参数;所述第二业务请求发送模块用于:将携带所述目标参数特征以及所述加密后的目标请求参数的第二业务请求发送至目标业务处理端。
[0020]
在一些实施例中,所述共享密钥确定单元用于:向所述目标业务处理端发送密钥参数协商请求,所述密钥参数协商请求携带第一哈希计算结果,所述第一哈希计算结果是根据第一参数类型标识进行哈希计算得到的;接收所述目标业务处理端返回的第二哈希计算结果,若确定所述第二哈希计算结果与所述第一哈希计算结果一致,则将所述第一参数类型标识作为密钥参数类型标识;获取所述密钥参数类型标识对应的目标密钥参数,根据所述目标密钥参数生成与所述目标业务处理端之间的共享密钥。
[0021]
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
[0022]
在一些实施例中,所述根据所述第一请求参数以及所述目标请求参数生成第二业务请求包括:对所述第一请求参数进行标准化处理,得到标准化处理参数;根据所述标准化处理参数以及所述目标请求参数生成第二业务请求。
[0023]
在一些实施例中,所述根据所述缺失参数类型获取对应类型的参数,作为目标请求参数包括:获取所述业务请求发送端对应的所述缺失参数类型的历史响应参数,作为目标请求参数。
[0024]
在一些实施例中,所述请求参数配置规则包括目标参数类型;所述根据所述请求参数配置规则配置得到目标请求参数,根据所述目标请求参数生成第二业务请求包括:根据所述目标参数类型获取对应类型的参数,作为目标请求参数,根据所述目标请求参数生成第二业务请求。
[0025]
在一些实施例中,所述根据所述目标请求参数生成第二业务请求包括:确定与所述目标业务处理端之间的共享密钥;根据所述共享密钥对所述目标请求参数进行加密处理,得到加密后的目标请求参数,生成携带所述加密后的目标请求参数的第二业务请求。
[0026]
在一些实施例中,所述根据所述共享密钥对所述目标请求参数进行加密处理,得到加密后的目标请求参数包括:获取所述目标请求参数对应的目标参数特征;根据所述目标参数特征以及所述共享密钥生成动态密钥,利用所述动态密钥对目标请求参数进行加密处理,得到加密后的目标请求参数;所述向所述目标业务处理端发送所述第二业务请求包括:将携带所述目标参数特征以及所述加密后的目标请求参数的第二业务请求发送至目标业务处理端。
[0027]
在一些实施例中,所述确定与所述目标业务处理端之间的共享密钥包括:向所述目标业务处理端发送密钥参数协商请求,所述密钥参数协商请求携带第一哈希计算结果,所述第一哈希计算结果是根据第一参数类型标识进行哈希计算得到的;接收所述目标业务
处理端返回的第二哈希计算结果,若确定所述第二哈希计算结果与所述第一哈希计算结果一致,则将所述第一参数类型标识作为密钥参数类型标识;获取所述密钥参数类型标识对应的目标密钥参数,根据所述目标密钥参数生成与所述目标业务处理端之间的共享密钥。
[0028]
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:在一些实施例中,所述根据所述第一请求参数以及所述目标请求参数生成第二业务请求包括:对所述第一请求参数进行标准化处理,得到标准化处理参数;根据所述标准化处理参数以及所述目标请求参数生成第二业务请求。
[0029]
在一些实施例中,所述根据所述缺失参数类型获取对应类型的参数,作为目标请求参数包括:获取所述业务请求发送端对应的所述缺失参数类型的历史响应参数,作为目标请求参数。
[0030]
在一些实施例中,所述请求参数配置规则包括目标参数类型;所述根据所述请求参数配置规则配置得到目标请求参数,根据所述目标请求参数生成第二业务请求包括:根据所述目标参数类型获取对应类型的参数,作为目标请求参数,根据所述目标请求参数生成第二业务请求。
[0031]
在一些实施例中,所述根据所述目标请求参数生成第二业务请求包括:确定与所述目标业务处理端之间的共享密钥;根据所述共享密钥对所述目标请求参数进行加密处理,得到加密后的目标请求参数,生成携带所述加密后的目标请求参数的第二业务请求。
[0032]
在一些实施例中,所述根据所述共享密钥对所述目标请求参数进行加密处理,得到加密后的目标请求参数包括:获取所述目标请求参数对应的目标参数特征;根据所述目标参数特征以及所述共享密钥生成动态密钥,利用所述动态密钥对目标请求参数进行加密处理,得到加密后的目标请求参数;所述向所述目标业务处理端发送所述第二业务请求包括:将携带所述目标参数特征以及所述加密后的目标请求参数的第二业务请求发送至目标业务处理端。
[0033]
在一些实施例中,所述确定与所述目标业务处理端之间的共享密钥包括:向所述目标业务处理端发送密钥参数协商请求,所述密钥参数协商请求携带第一哈希计算结果,所述第一哈希计算结果是根据第一参数类型标识进行哈希计算得到的;接收所述目标业务处理端返回的第二哈希计算结果,若确定所述第二哈希计算结果与所述第一哈希计算结果一致,则将所述第一参数类型标识作为密钥参数类型标识;获取所述密钥参数类型标识对应的目标密钥参数,根据所述目标密钥参数生成与所述目标业务处理端之间的共享密钥。
[0034]
上述业务请求处理方法、装置、计算机设备和存储介质,通过在接收到业务请求发送端发送的第一业务请求时,根据第一业务请求对应的业务类型以及目标业务处理方获取对应的请求参数配置规则,根据请求参数配置规则配置得到目标请求参数,根据目标请求参数生成第二业务请求,向目标业务处理方对应的目标业务处理端发送第二业务请求,接收目标业务处理端返回的业务响应信息,业务响应信息是目标业务处理端响应于第二业务请求获取的,根据业务类型对业务响应信息进行处理,得到标准响应信息,将标准响应信息发送至业务请求发送端,因此可以生成与目标业务处理方对应的目标业务处理端的请求规则匹配的第二业务请求,使得业务请求能够得到及时的处理,提高了业务请求的处理效率,而且还可以得到标准的响应信息,使得业务请求发送端能够准确解析到响应信息。
附图说明
[0035]
图1为一个实施例中业务请求处理方法的应用环境图;
[0036]
图2为一个实施例中业务请求处理方法的流程示意图;
[0037]
图3为一个实施例中根据请求参数配置规则配置得到目标请求参数,根据目标请求参数生成第二业务请求的流程示意图;
[0038]
图4为另一个实施例中根据目标请求参数生成第二业务请求的流程示意图;
[0039]
图5为一个实施例中业务请求处理装置的结构框图;
[0040]
图6为一个实施例中第二业务请求生成模块的结构框图;
[0041]
图7为一个实施例中计算机设备的内部结构图。
具体实施方式
[0042]
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
[0043]
本申请提供的业务请求处理方法,可以应用于如图1所示的应用环境中。其中,终端102通过网络与中转服务器104进行通信,中转服务器104通过网络与业务处理服务器106进行通信。终端102发送第一业务请求,该第一业务请求经由中转服务器104进行中转,中转服务器104确定第一业务请求对应的目标业务处理方以及对应的业务类型,根据业务类型以及目标业务处理方获取对应的请求参数配置规则;根据请求参数配置规则配置得到目标请求参数,根据目标请求参数生成第二业务请求,向业务处理服务器106发送第二业务请求,业务处理服务器106响应于第二业务请求,进行业务处理,得到业务响应信息,向中转服务器104发送业务响应信息,中转服务器104根据业务类型对业务响应信息进行处理,得到标准响应信息,将标准响应信息发送至终端102。
[0044]
其中,终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备,服务器可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
[0045]
在一个实施例中,如图2所示,提供了一种业务请求处理方法,以该方法应用于图1中的中转服务器104为例进行说明,包括以下步骤:
[0046]
步骤s202,接收业务请求发送端发送的第一业务请求。
[0047]
其中,业务请求发送端是指请发送业务请求的一端,可以是终端,也可以是服务器。业务请求用于请求进行业务数据的处理,例如可以是账单查询请求、交易请求或者图片处理请求等,业务请求可以是http((hypertext transferprotocol,超文本传输协议))请求。第一业务请求中可以携带业务类型标识以及目标业务处理方的标识。
[0048]
具体地,若需要获取业务响应信息,业务请求发送端可以向中转服务器发送第一业务请求,例如业务请求发送端可以是手机,手机上安装有银行的客户端,若银行的客户端接收到用户输入的请求查询账单的操作,则响应于该操作,向服务器发送第一业务请求。
[0049]
步骤s204,确定第一业务请求对应的目标业务处理方以及对应的业务类型,根据业务类型以及目标业务处理方获取对应的请求参数配置规则。
[0050]
其中,业务处理方是指处理请求的一方,例如可以是银行。该第一业务请求所对应
的业务处理端为目标业务处理方对应的业务处理端。例如,对于查询a 银行中的交易账单的账单查询请求,则目标业务处理方为a银行。业务类型根据具体情况确定,例如对于账单查询业务,则对应的业务类型标识可以为“zdcx”。对于交易请求,则对应的业务类型标识可以为“jy”。请求参数配置规则是指对请求中的参数进行配置的规则,中转服务器中预先存储了业务类型与目标业务处理方对应的请求参数配置规则。请求参数配置规则可以包括缺失参数配置规则或者数据转换规则的至少一个。缺失参数配置规则中设置了当参数缺失时,如何进行参数的配置,例如可以从参数数据库中获取缺失的参数。数据转换规则中设置了如何对请求中携带的参数进行转换,例如将英文字母的大小写进行转换的规则。
[0051]
具体地,中转服务器接收到第一业务请求后,可以从第一业务请求提取得到目标业务处理方对应的标识以及对应的业务类型,根据预先存储的业务类型以及业务处理方与参数配置规则的对应关系,获取到对应的请求参数配置规则。例如,设置了目标业务处理方为a银行,且业务类型为账单查询时,所对应的参数配置规则。
[0052]
步骤s206,根据请求参数配置规则配置得到目标请求参数,根据目标请求参数生成第二业务请求。
[0053]
具体地,相对于第一业务请求,第二业务请求的参数是根据参数配置规则配置得到的。例如,更改了第一业务请求中字母的格式,并对第一业务请求中缺失的数据进行了补充。
[0054]
在一些实施例中,请求参数配置规则包括目标参数类型;根据请求参数配置规则配置得到目标请求参数,根据目标请求参数生成第二业务请求包括:根据目标参数类型获取对应类型的参数,作为目标请求参数,根据目标请求参数生成第二业务请求。
[0055]
具体地,目标参数类型根据具体的业务处理端方以及业务请求的类型确定。预先设置了对应的要配置的参数的类型。例如,对于交易清单查询请求,则目标参数类型包括用户的身份证号以及银行卡号,根据目标参数类型所获取的对应类型的参数可以是从第一业务请求中携带的,也可以是从中转服务器的数据库中获取的。
[0056]
步骤s208,向目标业务处理方对应的目标业务处理端发送第二业务请求。
[0057]
具体地,目标业务处理端是对业务请求进行处理的一端,可以是终端,也可以是服务器。例如,中转服务器生成第二业务请求后,可以向业务处理服务器发送第二业务请求。举个实际的例子,假设目标业务处理方是a银行,则可以向a银行对应的服务器发送交易清单查询请求。
[0058]
步骤s210,接收目标业务处理端返回的业务响应信息,业务响应信息是目标业务处理端响应于第二业务请求,根据目标请求参数进行业务处理得到的。
[0059]
其中,业务响应信息可以是业务处理成功或者失败的信息。若业务处理成功,则还可以携带处理得到的结果。若业务处理失败,则可以携带失败原因。
[0060]
具体地,目标业务处理端接收到第二业务请求,响应于该请求,根据目标请求参数进行业务处理,得到业务响应消息。例如,对于交易清单查询请求,则目标请求参数可以包括银行卡号以及要查询的月份等,银行对应的服务器获取该银行卡号在要查询的月份的交易清单,并返回至中转服务器。
[0061]
在一些实施例中,中转服务器中可以配置对业务请求进行正确响应以及错误响应的状态码的码值。若接收到业务响应信息,可以根据业务响应信息中状态码的码值确定业
务处理成功或者失败。
[0062]
步骤s212,根据业务类型对业务响应信息进行处理,得到标准响应信息。
[0063]
具体地,标准响应信息是符合标准的信息格式或者标准的数据结构的至少一种的信息,例如中转服务器中可以配置生成标准响应信息的报文结构体。不同的业务类型对应的响应信息的处理规则可以不同。中转服务器中可以预先设置不同业务类型对应的字段,解析业务响应信息中各个原始字段对应的字段值,以获取业务响应消息中的参数,将参数转换为标准的数据格式,映射到标准响应信息对应的目标字段中,得到标准响应信息。对于没有对应的字段的参数,则进行过滤。例如,对于交易清单查询,银行对应的服务器返回的交易清单中,可能会含有冗余信息,如交易时间具体到毫秒,但对于用户而言,需要获取的交易时间可能只需要具体到小时,则交易清单查询对应的字段包括年、月、日以及时,不包括分、秒以及毫秒。则中转服务器获取到银行对应的服务器返回的交易清单后,可以将年、月、日以及时分别对应的时间参数按照时间的标准表示形式填充在符合标准的消息体中,从而过滤了分、秒以及毫秒对应的时间参数,得到标准响应信息,从而减少了信息冗余项。
[0064]
步骤s214,将标准响应信息发送至业务请求发送端。
[0065]
具体地,中转服务器将标准响应信息发送至业务请求发送端,业务请求发送端可以展示该标准响应信息。例如,展示交易清单。
[0066]
在一些实施例中,中转服务器中设置有用于对第一业务请求进行处理的应用,称为中转应用,目标业务处理端可以设置用于对第二业务请求进行处理的业务处理应用。如果中转应用和业务处理应用所在的系统为同一个后台系统,则可以设置业务处理应用与中转应用之间可以无需鉴权,也可以通过将中转服务器的ip(internet protocol)地址设置为白名单,以方便中转服务器与目标业务处理端的交互。
[0067]
在一些实施例中,如果中转应用和业务处理应用之间需要进行权限认证,则可以在中转应用下配置目标业务处理方的鉴权方式以及鉴权信息,鉴权方式可以为基于token(令牌)或者接口请求进行签名认证等方式。若基于token进行鉴权,则第二业务请求中携带token。
[0068]
在一些实施例中,第二业务请求中的参数可以携带在消息体的header(头部)、url(uniform resource locator,url)参数中或者消息体的body(主体)中。请求的方法可以为get、post、put或者delete等方法,还可以设置各个请求的类型。
[0069]
上述业务请求处理方法中,通过在接收到业务请求发送端发送的第一业务请求时,根据第一业务请求对应的业务类型以及目标业务处理方获取对应的请求参数配置规则,根据请求参数配置规则配置得到目标请求参数,根据目标请求参数生成第二业务请求,向目标业务处理方对应的目标业务处理端发送第二业务请求,接收目标业务处理端返回的业务响应信息,业务响应信息是目标业务处理端响应于第二业务请求获取的,根据业务类型对业务响应信息进行处理,得到标准响应信息,将标准响应信息发送至业务请求发送端,因此可以生成与目标业务处理方对应的目标业务处理端的请求规则匹配的第二业务请求,使得业务请求能够得到及时的处理,提高了业务请求的处理效率,而且还可以得到标准的响应信息,使得业务请求发送端能够准确解析到响应信息。
[0070]
在一个实施例中,如图3所示,根据请求参数配置规则配置得到目标请求参数,根据目标请求参数生成第二业务请求包括:
[0071]
步骤s302,确定第一业务请求中缺失的参数对应的缺失参数类型,根据缺失参数类型获取对应类型的参数,作为目标请求参数。
[0072]
具体地,对于目标业务处理端,需要业务请求中携带有满足条件的参数,才能响应于业务请求进行数据的处理。因此第一业务请求中缺失的参数是指获取到满足请求目的的响应信息,所缺失的参数。例如,假设业务请求为交易清单查询请求,即业务请求的目的为获取到交易清单,为了获取交易清单,需要提供银行卡号以及身份证号,而第一业务请求中携带了身份证号,未携带银行卡号,因此银行卡号为缺失的参数,缺失参数类型为银行卡的标识。因此可以获取对应类型的参数,作为目标请求参数。其中目标请求参数可以是根据第一业务请求中携带的第一请求参数以及缺少参数类型获取的,例如,中转服务器中可以存储参数间的对应关系,因此可以获取第一请求参数对应的,且参数类型为缺失参数类型的参数,作为目标请求参数。举个例子,中转服务器中可以存储身份证号码与银行卡号的对应关系,若确定缺失的参数类型为银行卡标识,可以获取第一业务请求中的身份证号码,获取该身份证号码对应的银行卡号。
[0073]
在一些实施例中,中转服务器可以获取业务请求发送端对应的缺失参数类型的历史响应参数,作为目标请求参数。
[0074]
具体到,历史响应参数是业务请求发送端在发送第一业务请求之前,通过中转服务器所获取到的响应参数。中转服务器可以存储该业务请求发送端对应的历史响应参数,这样,若第一业务请求存在数据缺失,则可以及时获取到所缺失的参数。例如,在进行交易账单查询之前,业务请求发送端发送了其他的业务请求(称为历史业务请求),例如获取银行卡号的请求,该请求中携带了请求参数(称为历史请求参数),例如身份证号码。该历史业务请求经过中转服务器中转至业务处理服务器,业务处理服务器根据历史请求参数获取对应的响应参数(称为历史响应参数),例如身份证号码对应的银行卡号。历史响应参数经由中转服务器返回至业务请求发送端,中转服务器可以存储历史请求参数与历史响应参数的对应关系。因此若中转服务器接收到第一业务请求,如果第一业务请求携带的第一请求参数与历史请求参数一致,且缺失参数类型与历史响应参数一致,则中转服务器可以获取历史请求参数对应的历史响应参数,作为目标请求参数。例如,若第一请求参数为身份证号码,缺失参数的类型为银行卡的标识,则可以获取身份证号码对应的银行卡标识,作为目标请求参数。
[0075]
步骤s304,获取第一业务请求中的参数,作为第一请求参数。
[0076]
具体地,中转服务器可以提取第一业务请求中携带的参数,作为第一请求参数,例如可以是身份证号码。
[0077]
步骤s306,根据第一请求参数以及目标请求参数生成第二业务请求。
[0078]
具体地,中转服务器可以将第一请求参数以及目标请求参数填充到满足业务请求的格式的消息体中,生成第二业务请求。当然中转服务器也可以是对第一请求参数进行处理,将处理后的参数填充到满足业务请求的格式的消息体中。
[0079]
在一些实施例中,中转服务器还可以对第一请求参数进行标准化处理,得到标准化处理参数;根据标准化处理参数以及目标请求参数生成第二业务请求。
[0080]
具体地,标准化处理是指将请求参数处理成符合标准的请求参数,符合标准可以包括请求中数据的格式符合标准。例如,假设标准包括数据的格式中,关于时间的格式为年
份以及月份都用两位数表示,且年费与月份的排序为先年份后月份,业务请求为交易清单查询请求,请求中的第一请求参数为“062019”,表示年份为“2019”,月份为6月份,则需要处理为“1906”。中转服务器可以将标准化处理参数及目标请求参数填充到满足业务请求的格式的消息体中,生成第二业务请求。通过标准化处理,使得目标业务处理端能够准确识别得到参数所代表的意思,从而可以得到准确的响应信息。
[0081]
在一些实施例中,如图4所示,根据目标请求参数生成第二业务请求包括:
[0082]
步骤s402,确定与目标业务处理端之间的共享密钥。
[0083]
具体地,共享密钥为目标业务处理端与中转服务器之间共享的密钥,目标业务处理端以及中转服务器都存储有该共享密钥,该共享密钥是预先约定好的,例如可以是预设的,也可以是目标业务处理端与中转服务器每隔预设时长进行密钥协商确定的。
[0084]
步骤s404,根据共享密钥对目标请求参数进行加密处理,得到加密后的目标请求参数,生成携带加密后的目标请求参数的第二业务请求。
[0085]
具体地,得到共享密钥之后,中转服务器可以直接利用共享密钥对目标请求参数进行加密,也可以根据共享密钥进一步生成直接加密的密钥。利用直接加密的密钥对目标请求参数进行加密,得到加密后的目标请求参数。基于共享密钥进行数据的加密,能够提高目标请求参数的安全性。
[0086]
在一些实施例中,根据共享密钥对目标请求参数进行加密处理,得到加密后的目标请求参数包括:获取目标请求参数对应的目标参数特征;根据目标参数特征以及共享密钥生成动态密钥,利用动态密钥对目标请求参数进行加密处理,得到加密后的目标请求参数;向目标业务处理端发送第二业务请求包括:将携带目标参数特征以及加密后的目标请求参数的第二业务请求发送至目标业务处理端。
[0087]
其中,参数特征是反映参数的特性的数据,服务器可以对参数进行特征提取,得到参数特征。例如参数特征可以是参数本身,也可以是参数的字节数等。动态密钥是指该密钥随着参数的变化而变化,因此使用动态密钥加密,能够进一步提高加密数据的安全性。动态密钥是利用预先约定的密钥生成算法,根据参数特征以及共享密钥生成的,例如可以是拼接得到的,也可以是根据哈希算法计算得到。中转服务器将参数特征以及加密后的第二业务请求发送至目标业务处理端。
[0088]
目标业务处理端接收到目标参数特征以及加密后的目标请求参数后,可以根据预先约定的密钥生成算法,生成与中转服务器生成的动态密钥一致的动态密钥。例如,利用哈希算法对参数特征以及共享密钥进行计算,得到动态密钥。目标业务处理端利用计算得到的动态密钥进行解密,得到解密后的目标请求参数。
[0089]
在一些实施例中,目标业务处理端可以获取解密后的目标请求参数的参数特征,若解密后的目标请求参数的参数特征与目标参数特征一致,则说明目标业务处理端接收到的目标请求参数被篡改或者是出现传输过程中数据部分丢失的情况的可能性比较小,故可以基于解密后的目标请求参数进行业务处理,得到业务响应信息,保证业务响应信息的准确度。
[0090]
在一些实施例中,业务请求处理方法还包括:向目标业务处理端发送密钥参数协商请求,密钥参数协商请求携带第一哈希计算结果,第一哈希计算结果是根据第一参数类型标识进行哈希计算得到的;接收目标业务处理端返回的第二哈希计算结果,若确定第二
哈希计算结果与第一哈希计算结果一致,则将第一参数类型标识作为密钥参数类型标识;获取密钥参数类型标识对应的目标密钥参数,根据目标密钥参数生成与目标业务处理端之间的共享密钥。
[0091]
其中,密钥参数协商请求用于协商采用哪种参数类型的参数所对应的参数特征生成共享密钥。第一参数类型标识用于标识生成共享密钥的参数的类型。第一参数类型可以是随机选择的,例如第一参数类型可以是中转服务器从预先存储的候选密钥参数集合中,各个候选密钥参数对应的参数类型中选取的。其中候选密钥参数集合可以是预先设置的,例如候选密钥参数集合对应的参数类型包括字母类型、数字类型以及混合类型,混合类型是指字母与数字混合。则中转服务器可以随机选取字母类型作为第一参数类型,获取第一参数类型的标识,例如“类型b”,对类型b进行哈希计算,得到第一哈希计算结果。
[0092]
密钥参数协商请求中不携带第一参数类型标识,目标业务处理端以及中转服务器中预先设置了哈希计算结果所对应的候选密钥参数集合,以及候选密钥参数集合对应的参数类型集合。目标业务处理端接收到第一哈希计算结果后,可以获取参数类型集合中的各个参数类型,分别进行哈希计算,将计算得到的哈希结算结果与第一哈希计算结果进行对比,将对比一致的哈希计算结果作为第二哈希计算结果,因此目标业务处理端可以确定用于生成共享密钥的参数的类型为得到第二哈希结算结果的类型,并向中转服务器返回密钥参数类型确认信息,表示已经确认用于生成共享密钥的参数的类型,密钥参数类型确认信息携带第二哈希结算结果,但不携带密钥参数类型的标识。中转服务器接收到第二哈希计算结果,将第二哈希计算结果与第一哈希计算结果进行对比,如果对比一致,则说明目标业务处理端与中转服务器所确定的密钥参数类型标识是一致的,因此在后续需要进行加密,中转服务器可以获取密钥参数类型标识对应的参数,作为目标密钥参数,可以根据密钥参数进行哈希计算,得到共享密钥。这样,密钥参数协商请求无需携带密钥参数类型,也可以进行密钥的协商,提高了安全性。
[0093]
举个例子,假设预先设置了候选密钥参数集合中包括“abc12345”,“456789”以及“abcfg”。“abc12345”对应的密钥参数类型为混合类型,参数类型标识为“hhlx”,“456789”对应的密钥参数类型为数字类型,参数类型标识为“szlx”,“abcfg”对应的密钥参数类型为字母类型,参数类型标识为“zmlx”。中转服务器可以选取混合类型作为第一参数类型标识,对“hhlx”进行哈希计算,得到第一哈希计算结果,发送至目标业务处理端,目标业务处理端接收到密钥参数协商请求,目标业务处理端中设置了候选密钥参数集合中包括“abc12345”,“456789”以及“abcfg”以及各个候选密钥参数对应的参数类型标识,。目标业务处理端对“hhlx”、“szlx”以及“zmlx”。分别进行哈希计算,将计算得到的哈希计算结果与第一哈希计算结果进行对比,确定“hhlx”的哈希与第一哈希计算结果相同,因此返回对“hhlx”进行哈希计算,得到的哈希计算结果,中转服务器将接收到的哈希计算结果与第一哈希计算结果进行对比,对比一致,确定密钥参数类型已经协商好,为“hhlx”。因此中转服务器根据“hhlx”对应的密钥参数“abc12345”,生成共享密钥。此外,由于已经协商好密钥参数标识,因此目标业务处理端也可以根据存储的“abc12345”生成与中转服务器一致的共享密钥。
[0094]
本申请实施例提供的业务请求处理方法可以应用于对http请求进行处理的方案中,目前,一个企业的内部应用如果需要与外部平台进行接口对接,需要开发人员熟悉外部
平台的对接协议,以确定如何进行报文发送和响应解析等,需要花费大量时间和人力去做这些事情,比较消耗企业成本。而通过本申请实施例提供的方法,可以提供一种通用的http协议接口对接方案,大大降低消耗的人力和时间成本
[0095]
应该理解的是,虽然上述流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,上述流程图的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
[0096]
在一个实施例中,如图5所示,提供了一种业务请求处理装置,包括:第一业务请求接收模块502、请求参数配置规则获取模块504、第二业务请求生成模块506、第二业务请求发送模块508、业务响应信息接收模块510、标准响应信息得到模块512和标准响应信息发送模块514,其中:
[0097]
第一业务请求接收模块502,用于接收业务请求发送端发送的第一业务请求。
[0098]
请求参数配置规则获取模块504,用于确定第一业务请求对应的目标业务处理方以及对应的业务类型,根据业务类型以及目标业务处理方获取对应的请求参数配置规则。
[0099]
第二业务请求生成模块506,用于根据请求参数配置规则配置得到目标请求参数,根据目标请求参数生成第二业务请求。
[0100]
第二业务请求发送模块508,用于向目标业务处理方对应的目标业务处理端发送第二业务请求。
[0101]
业务响应信息接收模块510,用于接收目标业务处理端返回的业务响应信息,业务响应信息是目标业务处理端响应于第二业务请求,根据目标请求参数进行业务处理得到的。
[0102]
标准响应信息得到模块512,用于根据业务类型对业务响应信息进行处理,得到标准响应信息。
[0103]
标准响应信息发送模块514,用于将标准响应信息发送至业务请求发送端。
[0104]
在一些实施例中,如图6所示,第二业务请求生成模块506包括:
[0105]
目标请求参数确定单元602,用于确定第一业务请求中缺失的参数对应的缺失参数类型,根据缺失参数类型获取对应类型的参数,作为目标请求参数。
[0106]
第一请求参数获取单元604,用于获取第一业务请求中的参数,作为第一请求参数。
[0107]
第二业务请求生成单元606,用于根据第一请求参数以及目标请求参数生成第二业务请求。
[0108]
在一些实施例中,第二业务请求生成单元用于:对第一请求参数进行标准化处理,得到标准化处理参数;根据标准化处理参数以及目标请求参数生成第二业务请求。
[0109]
在一些实施例中,目标请求参数确定单元用于:获取业务请求发送端对应的缺失参数类型的历史响应参数,作为目标请求参数。
[0110]
在一些实施例中,请求参数配置规则包括目标参数类型;第二业务请求生成模块用于:根据目标参数类型获取对应类型的参数,作为目标请求参数,根据目标请求参数生成
第二业务请求。
[0111]
在一些实施例中,第二业务请求生成模块包括:共享密钥确定单元,用于确定与目标业务处理端之间的共享密钥;加密单元,用于根据共享密钥对目标请求参数进行加密处理,得到加密后的目标请求参数,生成携带加密后的目标请求参数的第二业务请求。
[0112]
在一些实施例中,加密单元用于:获取目标请求参数对应的目标参数特征;根据目标参数特征以及共享密钥生成动态密钥,利用动态密钥对目标请求参数进行加密处理,得到加密后的目标请求参数;第二业务请求发送模块用于:将携带目标参数特征以及加密后的目标请求参数的第二业务请求发送至目标业务处理端。
[0113]
在一些实施例中,共享密钥确定单元用于:向目标业务处理端发送密钥参数协商请求,密钥参数协商请求携带第一哈希计算结果,第一哈希计算结果是根据第一参数类型标识进行哈希计算得到的;接收目标业务处理端返回的第二哈希计算结果,若确定第二哈希计算结果与第一哈希计算结果一致,则将第一参数类型标识作为密钥参数类型标识;获取密钥参数类型标识对应的目标密钥参数,根据目标密钥参数生成与目标业务处理端之间的共享密钥。
[0114]
关于业务请求处理装置的具体限定可以参见上文中对于业务请求处理方法的限定,在此不再赘述。上述业务请求处理装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
[0115]
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图7所示。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储业务请求处理数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种业务请求处理方法。
[0116]
本领域技术人员可以理解,图7中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
[0117]
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述业务请求处理方法的步骤。
[0118]
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述业务请求处理方法的步骤。
[0119]
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(read-only memory,rom)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器
(randomaccess memory,ram)或外部高速缓冲存储器。作为说明而非局限,ram可以是多种形式,比如静态随机存取存储器(static random access memory, sram)或动态随机存取存储器(dynamic random access memory,dram)等。
[0120]
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
[0121]
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1