一种业务请求报文数据的处理方法和装置制造方法及图纸

技术编号:28384015 阅读:16 留言:0更新日期:2021-05-08 00:12
本发明专利技术实施例涉及一种业务请求报文数据的处理方法和装置,所述方法包括:获取第一业务请求报文数据;对第一业务请求报文数据进行请求权限校验处理;校验成功则按超文本传输协议的请求报文数据格式,对第一业务请求报文数据进行拆解,生成对应的第一请求路径数据和第一参数数据组;根据第一请求路径数据查询第一对应关系表,生成对应的第一主机地址数据和第二请求路径数据;按超文本传输协议,拼装生成第二业务请求报文数据,并向第一主机地址数据对应的第一服务器,发送第二业务请求报文数据。将具备本发明专利技术实施例功能的服务部署在应用系统与公网的接口位置上,既可以降低受攻击的风险,又可以降低子服务用于处理业务请求的软硬件开销。

【技术实现步骤摘要】
一种业务请求报文数据的处理方法和装置
本专利技术涉及数据处理
,特别涉及一种业务请求报文数据的处理方法和装置。
技术介绍
传统的网络应用大多采用单体架构,也就是将应用程序的所有功能都打包成一个独立的单元部署在一个中心服务器上,中心服务器不但要对接所有外来业务请求,还要根据业务请求调用系统内部不同的功能模块进行处理。这种系统架构的优点是开发周期短、部署简单,但缺点也很明显:处理高并发难度大、功能迭代升级速度慢。为满足互联网应用高并发和功能快速迭代的需求,近年来,人们开始使用微服务架构来搭建应用系统。在微服务架构下,应用系统的所有功能可拆解为多个独立子服务,这些子服务可以部署在不同的服务器上独立运行,这些子服务间的应用程序接口(ApplicationProgrammingInterface,API)从传统单体架构内部的类、函数调用接口,变为服务器间的超文本传输协议(HyperTextTransferProtocol,HTTP)格式的业务请求报文接口。如此一来,中心服务器的业务处理流程可以被多个分布式子服务器接管,外来业务请求甚至可以直接发送至子服务器上进行处理,从而提高了应用系统对高并发的处理能力、和对快速升级的响应能力。但是,我们在实际实施部署中,也发现了一些问题,若直接将所有子服务都部署在公网上,子服务需要预备额外的软硬件资源来处理发自不同客户端的业务请求,另外还要申请多个公网地址对服务器进行部署,同时还会使得系统面临攻击的风险增大。为了兼顾灵活部署与安全运维,我们采用了一种折中的处理方式,在所有子服务与外部业务请求之间,增加一个业务请求转发层,该转发层主要负责对业务请求报文进行校验和转发。
技术实现思路
本专利技术的目的,就是针对现有技术的缺陷,提供一种业务请求报文数据的处理方法、装置、电子设备、计算机程序产品及计算机可读存储介质,实现上述业务请求转发层的功能,将接收的业务请求报文数据中的统一资源定位符(UniformResourceLocator,URL)信息做为请求路径,并通过查询预先配置的反映请求路径与转发主机地址及转发路径对应关系的第一对应关系表,得到对应的转发路径,并按转发路径向实际处理业务的服务器发送业务请求参数,并在接收和转发时,完成对业务请求报文数据的权限校验和授权参数准备等操作;这样一来,只需将具备本专利技术实施例功能的服务部署在公网上即可,既降低了应用系统整体受攻击的风险,又降低了子服务上用于处理业务请求的软硬件开销。为实现上述目的,本专利技术实施例第一方面提供了一种业务请求报文数据的处理方法,所述方法包括:获取第一业务请求报文数据;对所述第一业务请求报文数据,进行请求权限校验处理;所述请求权限校验处理成功,则按超文本传输协议HTTP协议的请求报文数据格式,对所述第一业务请求报文数据的请求行的统一资源定位符URL信息,进行路径信息与参数信息的拆解处理,生成对应的第一请求路径数据和第一参数数据组;根据所述第一请求路径数据,查询预设的反映请求路径与转发主机地址及转发路径对应关系的第一对应关系表,生成对应的第一主机地址数据和第二请求路径数据;按HTTP协议的请求报文数据格式,将所述第二请求路径数据做为请求报文请求行的URL信息,将所述第一主机地址数据做为请求报文请求头的主机字段信息,将所述第一参数数据组做为请求报文的请求体,拼装生成第二业务请求报文数据;并向所述第一主机地址数据对应的第一服务器,发送所述第二业务请求报文数据。优选的,所述对所述第一业务请求报文数据,进行请求权限校验处理,具体包括:按HTTP协议的请求报文数据格式,对所述第一业务请求报文数据的请求体中的所有字段进行提取,生成第一字段数据组集合;所述第一字段数据组集合包括多个第一字段数据组;所述第一字段数据组包括第一字段名数据和第一字段内容数据;在所述第一字段数据组集合中,根据预设的授权令牌字段名信息和授权校验码字段名信息,进行令牌字段查询处理,并根据查询结果生成第一授权类型数据;当所述第一授权类型数据为令牌授权类型时,提取与所述授权令牌字段名信息对应的所述第一字段数据组的所述第一字段内容数据,做为第一令牌数据;并根据所述第一令牌数据,进行第一令牌校验处理;若所述第一令牌校验处理成功,则所述请求权限校验处理成功;当所述第一授权类型数据为校验码授权类型时,提取与所述授权校验码字段名信息对应的所述第一字段数据组的所述第一字段内容数据,做为第一校验码数据;并根据所述第一校验码数据,进行第一校验码校验处理;若所述第一校验码校验处理成功,则所述请求权限校验处理成功;当所述第一授权类型数据为令牌及校验码授权类型时,提取与所述授权令牌字段名信息对应的所述第一字段数据组的所述第一字段内容数据,做为第二令牌数据,并提取与所述授权校验码字段名信息对应的所述第一字段数据组的所述第一字段内容数据,做为第二校验码数据;并根据所述第二令牌数据,进行第二令牌校验处理;并根据所述第二校验码数据,进行第二校验码校验处理;若所述第二令牌校验处理成功、且所述第二校验码校验处理成功,则所述请求权限校验处理成功。进一步的,所述在所述第一字段数据组集合中,根据预设的授权令牌字段名信息和授权校验码字段名信息,进行令牌字段查询处理,并根据查询结果生成第一授权类型数据,具体包括:初始化第一状态数据和第二状态数据为空;在所述第一字段数据组集合中,对所有所述第一字段名数据进行轮询,当被轮询的所述第一字段名数据与所述授权令牌字段名信息匹配时,设置所述第一状态数据为成功状态;在所述第一字段数据组集合中,对所有所述第一字段名数据进行轮询,当被轮询的所述第一字段名数据与所述授权校验码字段名信息匹配时,设置所述第二状态数据为成功状态;当所述第一状态数据为所述成功状态、且所述第二状态数据为空时,将所述第一授权类型数据设为所述令牌授权类型;当所述第一状态数据为空、且所述第二状态数据为所述成功状态时,将所述第一授权类型数据设为所述校验码授权类型;当所述第一状态数据和所述第二状态数据均为所述成功状态时,将所述第一授权类型数据设为所述令牌及校验码授权类型。优选的,所述根据所述第一请求路径数据,查询预设的反映请求路径与转发主机地址及转发路径对应关系的第一对应关系表,生成对应的第一主机地址数据和第二请求路径数据,具体包括:根据所述第一请求路径数据,对所述第一对应关系表的所有第一对应关系记录进行轮询;当被轮询的所述第一对应关系记录的第一请求路径字段与所述第一请求路径数据匹配时,提取被轮询的所述第一对应关系记录的第一转发主机地址字段,做为所述第一主机地址数据;并提取被轮询的所述第一对应关系记录的第一转发路径字段,做为所述第二请求路径数据;所述第一对应关系表包括多个所述第一对应关系记录;所述第一对应关系记录包括所述第一请求路径字段、所述第一转发主机地址字段和所述第一转发路径字段。优选的,所述拼装生成第二业务请求报文数据时,所述方法还包括:根据所述第一主机地本文档来自技高网
...

【技术保护点】
1.一种业务请求报文数据的处理方法,其特征在于,所述方法包括:/n获取第一业务请求报文数据;/n对所述第一业务请求报文数据,进行请求权限校验处理;/n所述请求权限校验处理成功,则按超文本传输协议HTTP协议的请求报文数据格式,对所述第一业务请求报文数据的请求行的统一资源定位符URL信息,进行路径信息与参数信息的拆解处理,生成对应的第一请求路径数据和第一参数数据组;/n根据所述第一请求路径数据,查询预设的反映请求路径与转发主机地址及转发路径对应关系的第一对应关系表,生成对应的第一主机地址数据和第二请求路径数据;/n按HTTP协议的请求报文数据格式,将所述第二请求路径数据做为请求报文请求行的URL信息,将所述第一主机地址数据做为请求报文请求头的主机字段信息,将所述第一参数数据组做为请求报文的请求体,拼装生成第二业务请求报文数据;并向所述第一主机地址数据对应的第一服务器,发送所述第二业务请求报文数据。/n

【技术特征摘要】
1.一种业务请求报文数据的处理方法,其特征在于,所述方法包括:
获取第一业务请求报文数据;
对所述第一业务请求报文数据,进行请求权限校验处理;
所述请求权限校验处理成功,则按超文本传输协议HTTP协议的请求报文数据格式,对所述第一业务请求报文数据的请求行的统一资源定位符URL信息,进行路径信息与参数信息的拆解处理,生成对应的第一请求路径数据和第一参数数据组;
根据所述第一请求路径数据,查询预设的反映请求路径与转发主机地址及转发路径对应关系的第一对应关系表,生成对应的第一主机地址数据和第二请求路径数据;
按HTTP协议的请求报文数据格式,将所述第二请求路径数据做为请求报文请求行的URL信息,将所述第一主机地址数据做为请求报文请求头的主机字段信息,将所述第一参数数据组做为请求报文的请求体,拼装生成第二业务请求报文数据;并向所述第一主机地址数据对应的第一服务器,发送所述第二业务请求报文数据。


2.根据权利要求1所述的业务请求报文数据的处理方法,其特征在于,所述对所述第一业务请求报文数据,进行请求权限校验处理,具体包括:
按HTTP协议的请求报文数据格式,对所述第一业务请求报文数据的请求体中的所有字段进行提取,生成第一字段数据组集合;所述第一字段数据组集合包括多个第一字段数据组;所述第一字段数据组包括第一字段名数据和第一字段内容数据;
在所述第一字段数据组集合中,根据预设的授权令牌字段名信息和授权校验码字段名信息,进行令牌字段查询处理,并根据查询结果生成第一授权类型数据;
当所述第一授权类型数据为令牌授权类型时,提取与所述授权令牌字段名信息对应的所述第一字段数据组的所述第一字段内容数据,做为第一令牌数据;并根据所述第一令牌数据,进行第一令牌校验处理;若所述第一令牌校验处理成功,则所述请求权限校验处理成功;
当所述第一授权类型数据为校验码授权类型时,提取与所述授权校验码字段名信息对应的所述第一字段数据组的所述第一字段内容数据,做为第一校验码数据;并根据所述第一校验码数据,进行第一校验码校验处理;若所述第一校验码校验处理成功,则所述请求权限校验处理成功;
当所述第一授权类型数据为令牌及校验码授权类型时,提取与所述授权令牌字段名信息对应的所述第一字段数据组的所述第一字段内容数据,做为第二令牌数据,并提取与所述授权校验码字段名信息对应的所述第一字段数据组的所述第一字段内容数据,做为第二校验码数据;并根据所述第二令牌数据,进行第二令牌校验处理;并根据所述第二校验码数据,进行第二校验码校验处理;若所述第二令牌校验处理成功、且所述第二校验码校验处理成功,则所述请求权限校验处理成功。


3.根据权利要求2所述的业务请求报文数据的处理方法,其特征在于,所述在所述第一字段数据组集合中,根据预设的授权令牌字段名信息和授权校验码字段名信息,进行令牌字段查询处理,并根据查询结果生成第一授权类型数据,具体包括:
初始化第一状态数据和第二状态数据为空;
在所述第一字段数据组集合中,对所有所述第一字段名数据进行轮询,当被轮询的所述第一字段名数据与所述授权令牌字段名信息匹配时,设置所述第一状态数据为成功状态;
在所述第一字段数据组集合中,对所有所述第一字段名数据进行轮询,当被轮询的所述第一字段名数据与所述授权校验码字段名信息匹配时,设置所述第二状态数据为成功状态;
当所述第一状态数据为所述成功状态、且所述第二状态数据为空时,将所述第一授权类型数据设为所述令牌授权类型;当所述第一状态数据为空、且所述第二状态数据为所述成功状态时,将所述第一授权...

【专利技术属性】
技术研发人员:张奎袁飞
申请(专利权)人:北京树米网络科技有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1