一种前端应用请求消息的处理方法及系统及装置及介质制造方法及图纸

技术编号:34128071 阅读:27 留言:0更新日期:2022-07-14 14:42
本发明专利技术公开了一种前端应用请求消息的处理方法及系统及装置及介质,涉及计算机领域,包括:请求拦截器拦截前端应用发起的请求消息,对所述请求消息进行处理,获得所述请求消息的第一标识信息;判断请求缓存池中是否存在所述第一标识信息;若所述请求缓存池中存在所述第一标识信息,则取消所述请求消息;若所述请求缓存池中不存在所述第一标识信息,则通过浏览器发送所述请求消息并在所述请求缓存池中添加所述第一标识信息,在获得所述请求消息对应的请求结果数据后将所述缓存池中的所述第一标识信息删除;本发明专利技术能够有效控制请求缓存及防止短时间内发送多次重复请求。存及防止短时间内发送多次重复请求。存及防止短时间内发送多次重复请求。

【技术实现步骤摘要】
一种前端应用请求消息的处理方法及系统及装置及介质


[0001]本专利技术涉及计算机领域,具体地,涉及一种前端应用请求消息的处理方法及系统及装置及介质。

技术介绍

[0002]在现在的web应用开发中,通常采用的是前后端分离架构。在前端应用中现有技术通常会将数据请求方法进行封装处理,用于与后端进行网络通信及数据传输。现有接口请求封装大多针对于请求参数及返回结果进行处理封装。各个请求之间相互独立,异步进行,不能有效控制请求缓存及防止短时间内发送多次重复请求的问题。

技术实现思路

[0003]为解决上述问题,本专利技术提供了一种前端应用请求消息的处理方法及系统及装置及介质,本专利技术能够有效控制请求缓存及防止短时间内发送多次重复请求。
[0004]为实现上述专利技术目的,本专利技术提供了一种前端应用请求消息的处理方法,所述方法包括:
[0005]请求拦截器拦截前端应用发起的请求消息,对所述请求消息进行处理,获得所述请求消息的第一标识信息;
[0006]判断请求缓存池中是否存在所述第一标识信息;
[0007]若所述请求缓存池中存在所述第一标识信息,则取消所述请求消息;
[0008]若所述请求缓存池中不存在所述第一标识信息,则通过浏览器发送所述请求消息并在所述请求缓存池中添加所述第一标识信息,在获得所述请求消息对应的请求结果数据后将所述缓存池中的所述第一标识信息删除。
[0009]其中,本专利技术的原理为在本方法中添加请求拦截器和请求缓存池,利用请求拦截器对请求信息进行拦截,获得表示请求消息身份的标识信息,然后判断请求缓存池中是否存在相同的标识信息,如果存在说明是相同的请求,则取消该请求消息,避免了短时间内请求消息多次重复发送,节约了资源,如果不存在则说明是不同的请求,则可以通过浏览器正常发送请求,并在请求缓存池中添加相应的标识信息,以后续请求发送时判断是否是相同的请求,避免相同的请求多次发送。
[0010]优选的,本方法获得所述请求消息的第一标识信息包括以下步骤:
[0011]获得所述请求消息中的请求地址及请求参数;
[0012]将所述请求地址及请求参数转换为字符串;
[0013]将所述字符串进行编码获得所述第一标识信息。
[0014]其中,本方法采用上述方式获得请求消息的第一标识信息,首先获得请求消息中的请求地址及请求参数,每个请求消息都具有相应的请求地址和请求参数,但是每个请求消息的请求地址和请求参数不同,因此,利用请求地址和请求参数可以表示请求消息的唯一身份,但是请求地址和请求参数不能够直接进行比较判断,为了便于进行比较判断,本方
法将请求地址及请求参数转换为字符串,然后将字符串进行编码获得第一标识信息,这样就获得了即能够唯一表示请求消息身份且能够进行比较判断的标识信息。
[0015]优选的,本方法将所述请求地址及请求参数转换为JSON字符串。
[0016]优选的,本方法使用encodeURIComponent函数对所述字符串进行编码。
[0017]其中,在实际应用中可以有很多种方式进行转换和编码,但是本方法中选择了将请求地址及请求参数转换为JSON字符串,使用encodeURIComponent函数对字符串进行编码,目的是这种方式使用的函数都是JS语言本身自带的方法,调用简单并且能将请求对象直接进行序列化。encodeURIComponent方法也是浏览器本身自带的字符集替换。通过上述俩种方法基本就可以直接获得第一标识信息,如果使用特定的加密解密方式,在字符序列化的基础上还需要进行运行加密算法和解密算法,增长了函数的连用链路和执行过程,因此这种方式能够高效且准确的获得请求的标识。
[0018]申请人还研究发现现有技术在请求期间不能统一管理请求过程中对页面加载效果的影响。使得页面加载效果需要单独的应用进行操作,导致了页面加载管理复杂,效率较低且浪费资源,为了解决上述问题,本申请对本方法进行了再次改进,具体为:
[0019]若所述请求缓存池中不存在所述第一标识信息,本方法还包括以下步骤:
[0020]判断所述请求消息中是否包括页面加载请求;
[0021]若所述请求消息中包括页面加载请求,则执行所述页面加载请求,在浏览器页面中显示页面加载内容,获得所述请求结果数据后隐藏页面加载内容。
[0022]其中,本方法对请求消息进行了改进,增加了是否包括页面加载请求的选项,上述2次改进的原理是若请求缓存池中不存在所述第一标识信息,那么后续就需要发送该请求消息了,在发送前,本方法还包括判断请求消息中是否包括页面加载请求;若请求消息中包括页面加载请求,则执行所述页面加载请求,在浏览器页面中显示页面加载内容,获得所述请求结果数据后隐藏页面加载内容。即在氢气覍中增加了页面加载请求实现了能够通过请求消息对页面加载请求的高效管理,使得不需要单独的应用发起管理操作。
[0023]优选的,本方法中若所述请求消息中包括页面加载请求,则加载计数器的统计数目加一并执行该页面加载请求,在浏览器页面中显示页面加载内容,获得所述请求结果数据后,加载计数器的统计数目减一并隐藏页面加载内容。
[0024]其中,设计加载计数器可以方便对页面加载请求进行统计和管理,可以避免多次重复加载也可以避免漏掉加载请求。
[0025]优选的,本方法通过所述请求拦截器的请求头模块识别所述请求消息的请求配置中是否包括页面加载请求,若包括页面加载请求,则所述请求头模块生成页面加载指令,并将所述页面加载指令发送至浏览器,浏览器基于所述页面加载指令在页面中显示页面加载内容。
[0026]其中,本方法对请求拦截器的请求头模块进行改进,对请求头模块添加识别功能,识别所述请求消息的请求配置中是否包括页面加载请求。
[0027]优选的,本方法在获得所述请求结果数据后,通过所述请求拦截器的响应头模块生成隐藏页面加载内容指令,并将所述隐藏页面加载内容指令发送至浏览器,浏览器基于所述隐藏页面加载内容指令隐藏页面加载内容。
[0028]其中,本方法对请求拦截器的响应头模块进行改进,通过响应头模块生成隐藏页
面加载内容指令来对页面加载内容隐藏进行管理。
[0029]为实现上述专利技术目的,本专利技术还提供了一种前端应用请求消息的处理系统,所述系统包括:
[0030]请求拦截器,所述请求拦截器用于拦截前端应用发起的请求消息,对所述请求消息进行处理,获得所述请求消息的第一标识信息;
[0031]判断单元,所述判断单元用于判断请求缓存池中是否存在所述第一标识信息;
[0032]处理单元,所述处理单用于若所述请求缓存池中存在所述第一标识信息,则取消所述请求消息;以及用于若所述请求缓存池中不存在所述第一标识信息,则通过浏览器发送所述请求消息并在所述请求缓存池中添加所述第一标识信息,在获得所述请求消息对应的请求结果数据后将所述缓存池中的所述第一标识信息删除。
[0033]为实现上述专利技术目的,本专利技术还提供了一种前端应本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种前端应用请求消息的处理方法,其特征在于,所述方法包括:请求拦截器拦截前端应用发起的请求消息,对所述请求消息进行处理,获得所述请求消息的第一标识信息;判断请求缓存池中是否存在所述第一标识信息;若所述请求缓存池中存在所述第一标识信息,则取消所述请求消息;若所述请求缓存池中不存在所述第一标识信息,则通过浏览器发送所述请求消息并在所述请求缓存池中添加所述第一标识信息,在获得所述请求消息对应的请求结果数据后将所述缓存池中的所述第一标识信息删除。2.根据权利要求1所述的一种前端应用请求消息的处理方法,其特征在于,本方法获得所述请求消息的第一标识信息包括以下步骤:获得所述请求消息中的请求地址及请求参数;将所述请求地址及请求参数转换为字符串;将所述字符串进行编码获得所述第一标识信息。3.根据权利要求2所述的一种前端应用请求消息的处理方法,其特征在于,将所述请求地址及请求参数转换为JSON字符串。4.根据权利要求2所述的一种前端应用请求消息的处理方法,其特征在于,使用encodeURIComponent函数对所述字符串进行编码。5.根据权利要求1所述的一种前端应用请求消息的处理方法,其特征在于,若所述请求缓存池中不存在所述第一标识信息,本方法还包括以下步骤:判断所述请求消息中是否包括页面加载请求;若所述请求消息中包括页面加载请求,则执行所述页面加载请求,在浏览器页面中显示页面加载内容,获得所述请求结果数据后隐藏页面加载内容。6.根据权利要求5所述的一种前端应用请求消息的处理方法,其特征在于,若所述请求消息中包括页面加载请求,则加载计数器的统计数目加一并执行该页面加载请求,在浏览器页面中显示页面加载内容,获得所述请求结果数据后,加载计数器的统计数目减一并隐藏页面加载内容。7.根据权利要求5所述的一种前端应用请...

【专利技术属性】
技术研发人员:ꢀ七四专利代理机构
申请(专利权)人:成都数联云算科技有限公司
类型:发明
国别省市:

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

1