CN114745363B - 一种前端应用请求消息的处理方法及系统及装置及介质 - Google Patents
一种前端应用请求消息的处理方法及系统及装置及介质 Download PDFInfo
- Publication number
- CN114745363B CN114745363B CN202210268404.3A CN202210268404A CN114745363B CN 114745363 B CN114745363 B CN 114745363B CN 202210268404 A CN202210268404 A CN 202210268404A CN 114745363 B CN114745363 B CN 114745363B
- Authority
- CN
- China
- Prior art keywords
- request
- request message
- page loading
- identification information
- page
- 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.)
- Active
Links
- 238000003672 processing method Methods 0.000 title description 5
- 238000000034 method Methods 0.000 claims abstract description 88
- 238000012545 processing Methods 0.000 claims abstract description 45
- 230000008569 process Effects 0.000 claims abstract description 10
- 230000006870 function Effects 0.000 claims description 24
- 238000004590 computer program Methods 0.000 claims description 18
- 230000004044 response Effects 0.000 claims description 13
- 230000000694 effects Effects 0.000 description 24
- 238000012986 modification Methods 0.000 description 11
- 230000004048 modification Effects 0.000 description 11
- 230000000977 initiatory effect Effects 0.000 description 8
- 238000010586 diagram Methods 0.000 description 6
- 230000006872 improvement Effects 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 3
- 239000000463 material Substances 0.000 description 3
- 230000000644 propagated effect Effects 0.000 description 3
- UFHFLCQGNIYNRP-UHFFFAOYSA-N Hydrogen Chemical compound [H][H] UFHFLCQGNIYNRP-UHFFFAOYSA-N 0.000 description 2
- 230000004075 alteration Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000005538 encapsulation Methods 0.000 description 2
- 229910052739 hydrogen Inorganic materials 0.000 description 2
- 239000001257 hydrogen Substances 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 241000579895 Chlorostilbon Species 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000000712 assembly Effects 0.000 description 1
- 238000000429 assembly Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 239000010976 emerald Substances 0.000 description 1
- 229910052876 emerald Inorganic materials 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 239000010977 jade Substances 0.000 description 1
- ZLIBICFPKPWGIZ-UHFFFAOYSA-N pyrimethanil Chemical compound CC1=CC(C)=NC(NC=2C=CC=CC=2)=N1 ZLIBICFPKPWGIZ-UHFFFAOYSA-N 0.000 description 1
- 239000010979 ruby Substances 0.000 description 1
- 229910001750 ruby Inorganic materials 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/90—Buffering arrangements
- H04L49/9047—Buffering arrangements including multiple buffers, e.g. buffer pools
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了一种前端应用请求消息的处理方法及系统及装置及介质,涉及计算机领域,包括:请求拦截器拦截前端应用发起的请求消息,对所述请求消息进行处理,获得所述请求消息的第一标识信息;判断请求缓存池中是否存在所述第一标识信息;若所述请求缓存池中存在所述第一标识信息,则取消所述请求消息;若所述请求缓存池中不存在所述第一标识信息,则通过浏览器发送所述请求消息并在所述请求缓存池中添加所述第一标识信息,在获得所述请求消息对应的请求结果数据后将所述缓存池中的所述第一标识信息删除;本发明能够有效控制请求缓存及防止短时间内发送多次重复请求。
Description
技术领域
本发明涉及计算机领域,具体地,涉及一种前端应用请求消息的处理方法及系统及装置及介质。
背景技术
在现在的web应用开发中,通常采用的是前后端分离架构。在前端应用中现有技术通常会将数据请求方法进行封装处理,用于与后端进行网络通信及数据传输。现有接口请求封装大多针对于请求参数及返回结果进行处理封装。各个请求之间相互独立,异步进行,不能有效控制请求缓存及防止短时间内发送多次重复请求的问题。
发明内容
为解决上述问题,本发明提供了一种前端应用请求消息的处理方法及系统及装置及介质,本发明能够有效控制请求缓存及防止短时间内发送多次重复请求。
为实现上述发明目的,本发明提供了一种前端应用请求消息的处理方法,所述方法包括:
请求拦截器拦截前端应用发起的请求消息,对所述请求消息进行处理,获得所述请求消息的第一标识信息;
判断请求缓存池中是否存在所述第一标识信息;
若所述请求缓存池中存在所述第一标识信息,则取消所述请求消息;
若所述请求缓存池中不存在所述第一标识信息,则通过浏览器发送所述请求消息并在所述请求缓存池中添加所述第一标识信息,在获得所述请求消息对应的请求结果数据后将所述缓存池中的所述第一标识信息删除。
其中,本发明的原理为在本方法中添加请求拦截器和请求缓存池,利用请求拦截器对请求信息进行拦截,获得表示请求消息身份的标识信息,然后判断请求缓存池中是否存在相同的标识信息,如果存在说明是相同的请求,则取消该请求消息,避免了短时间内请求消息多次重复发送,节约了资源,如果不存在则说明是不同的请求,则可以通过浏览器正常发送请求,并在请求缓存池中添加相应的标识信息,以后续请求发送时判断是否是相同的请求,避免相同的请求多次发送。
优选的,本方法获得所述请求消息的第一标识信息包括以下步骤:
获得所述请求消息中的请求地址及请求参数;
将所述请求地址及请求参数转换为字符串;
将所述字符串进行编码获得所述第一标识信息。
其中,本方法采用上述方式获得请求消息的第一标识信息,首先获得请求消息中的请求地址及请求参数,每个请求消息都具有相应的请求地址和请求参数,但是每个请求消息的请求地址和请求参数不同,因此,利用请求地址和请求参数可以表示请求消息的唯一身份,但是请求地址和请求参数不能够直接进行比较判断,为了便于进行比较判断,本方法将请求地址及请求参数转换为字符串,然后将字符串进行编码获得第一标识信息,这样就获得了即能够唯一表示请求消息身份且能够进行比较判断的标识信息。
优选的,本方法将所述请求地址及请求参数转换为JSON字符串。
优选的,本方法使用encodeURIComponent函数对所述字符串进行编码。
其中,在实际应用中可以有很多种方式进行转换和编码,但是本方法中选择了将请求地址及请求参数转换为JSON字符串,使用encodeURIComponent函数对字符串进行编码,目的是这种方式使用的函数都是JS语言本身自带的方法,调用简单并且能将请求对象直接进行序列化。encodeURIComponent方法也是浏览器本身自带的字符集替换。通过上述俩种方法基本就可以直接获得第一标识信息,如果使用特定的加密解密方式,在字符序列化的基础上还需要进行运行加密算法和解密算法,增长了函数的连用链路和执行过程,因此这种方式能够高效且准确的获得请求的标识。
申请人还研究发现现有技术在请求期间不能统一管理请求过程中对页面加载效果的影响。使得页面加载效果需要单独的应用进行操作,导致了页面加载管理复杂,效率较低且浪费资源,为了解决上述问题,本申请对本方法进行了再次改进,具体为:
若所述请求缓存池中不存在所述第一标识信息,本方法还包括以下步骤:
判断所述请求消息中是否包括页面加载请求;
若所述请求消息中包括页面加载请求,则执行所述页面加载请求,在浏览器页面中显示页面加载内容,获得所述请求结果数据后隐藏页面加载内容。
其中,本方法对请求消息进行了改进,增加了是否包括页面加载请求的选项,上述2次改进的原理是若请求缓存池中不存在所述第一标识信息,那么后续就需要发送该请求消息了,在发送前,本方法还包括判断请求消息中是否包括页面加载请求;若请求消息中包括页面加载请求,则执行所述页面加载请求,在浏览器页面中显示页面加载内容,获得所述请求结果数据后隐藏页面加载内容。即在氢气覍中增加了页面加载请求实现了能够通过请求消息对页面加载请求的高效管理,使得不需要单独的应用发起管理操作。
优选的,本方法中若所述请求消息中包括页面加载请求,则加载计数器的统计数目加一并执行该页面加载请求,在浏览器页面中显示页面加载内容,获得所述请求结果数据后,加载计数器的统计数目减一并隐藏页面加载内容。
其中,设计加载计数器可以方便对页面加载请求进行统计和管理,可以避免多次重复加载也可以避免漏掉加载请求。
优选的,本方法通过所述请求拦截器的请求头模块识别所述请求消息的请求配置中是否包括页面加载请求,若包括页面加载请求,则所述请求头模块生成页面加载指令,并将所述页面加载指令发送至浏览器,浏览器基于所述页面加载指令在页面中显示页面加载内容。
其中,本方法对请求拦截器的请求头模块进行改进,对请求头模块添加识别功能,识别所述请求消息的请求配置中是否包括页面加载请求。
优选的,本方法在获得所述请求结果数据后,通过所述请求拦截器的响应头模块生成隐藏页面加载内容指令,并将所述隐藏页面加载内容指令发送至浏览器,浏览器基于所述隐藏页面加载内容指令隐藏页面加载内容。
其中,本方法对请求拦截器的响应头模块进行改进,通过响应头模块生成隐藏页面加载内容指令来对页面加载内容隐藏进行管理。
为实现上述发明目的,本发明还提供了一种前端应用请求消息的处理系统,所述系统包括:
请求拦截器,所述请求拦截器用于拦截前端应用发起的请求消息,对所述请求消息进行处理,获得所述请求消息的第一标识信息;
判断单元,所述判断单元用于判断请求缓存池中是否存在所述第一标识信息;
处理单元,所述处理单用于若所述请求缓存池中存在所述第一标识信息,则取消所述请求消息;以及用于若所述请求缓存池中不存在所述第一标识信息,则通过浏览器发送所述请求消息并在所述请求缓存池中添加所述第一标识信息,在获得所述请求消息对应的请求结果数据后将所述缓存池中的所述第一标识信息删除。
为实现上述发明目的,本发明还提供了一种前端应用请求消息的处理装置,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现所述一种前端应用请求消息的处理方法的步骤。
为实现上述发明目的,本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现所述一种前端应用请求消息的处理方法的步骤。
本发明提供的一个或多个技术方案,至少具有如下技术效果或优点:
本发明将页面加载效果与接口请求进行结合,只需要在请求层标注该请求是否需要页面加载效果,后续加载效果的产生与结束由接口请求过程进行控制,无需在每一个前端页面单独进行页面加载效果的处理,实现了页面加载效果的高效管理,节约了资源。
本发明在请求拦截器中加入请求缓存池,存在于缓存池中的请求无法再次发起实质性的网络请求,以达到防止短时间内相同数据请求重复发起,避免了短时间内请求消息多次重复发送,节约了资源。
附图说明
此处所说明的附图用来提供对本发明实施例的进一步理解,构成本发明的一部分,并不构成对本发明实施例的限定;
图1为本方法中携带页面加载效果的请求处理流程示意图;
图2为本方法中避免重复发起请求的请求处理流程示意图;
图3为前端应用请求消息的处理系统的组成示意图。
具体实施方式
为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和具体实施方式对本发明进行进一步的详细描述。需要说明的是,在相互不冲突的情况下,本发明的实施例及实施例中的特征可以相互组合。
在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是,本发明还可以采用其他不同于在此描述范围内的其他方式来实施,因此,本发明的保护范围并不受下面公开的具体实施例的限制。
应当理解,本文使用的“系统”、“装置”、“单元”和/或“模组”是用于区分不同级别的不同组件、元件、部件、部分或装配的一种方法。然而,如果其他词语可实现相同的目的,则可通过其他表达来替换所述词语。
如本说明书和权利要求书中所示,除非上下文明确提示例外情形,“一”、“一个”、“一种”和/或“该”等词并非特指单数,也可包括复数。一般说来,术语“包括”与“包含”仅提示包括已明确标识的步骤和元素,而这些步骤和元素不构成一个排它性的罗列,方法或者设备也可能包含其它的步骤或元素。
本说明书中使用了流程图用来说明根据本说明书的实施例的系统所执行的操作。应当理解的是,前面或后面操作不一定按照顺序来精确地执行。相反,可以按照倒序或同时处理各个步骤。同时,也可以将其他操作添加到这些过程中,或从这些过程移除某一步或数步操作。
实施例一
本发明实施例一提供了一种前端应用请求消息的处理方法,所述方法包括:
请求拦截器拦截前端应用发起的请求消息,对所述请求消息进行处理,获得所述请求消息的第一标识信息;
判断请求缓存池中是否存在所述第一标识信息;
若所述请求缓存池中存在所述第一标识信息,则取消所述请求消息;
若所述请求缓存池中不存在所述第一标识信息,则通过浏览器发送所述请求消息并在所述请求缓存池中添加所述第一标识信息,在获得所述请求消息对应的请求结果数据后将所述缓存池中的所述第一标识信息删除。
本实施例中采用了添加请求拦截器和请求缓存池,利用请求拦截器对请求信息进行拦截,获得表示请求消息身份的标识信息,然后判断请求缓存池中是否存在相同的标识信息,如果存在说明是相同的请求,则取消该请求消息,避免了短时间内请求消息多次重复发送,节约了资源,如果不存在则说明是不同的请求,则可以通过浏览器正常发送请求,并在请求缓存池中添加相应的标识信息,以后续请求发送时判断是否是相同的请求,避免相同的请求多次发送。
其中,请求拦截器包括请求头模块及响应头模块,在请求头拦截器函数中,我们可以将请求所需的一些字段,加入到请求头上,并且可以进行一些判断,决定是否发起此次请求。在响应头拦截器函数中,负责将请求返回数据进行处理,一般将请求错误分类响应放在这个部分。
其中,本方法首先获得请求消息中的请求地址及请求参数,每个请求消息都具有相应的请求地址和请求参数,但是每个请求消息的请求地址和请求参数不同,因此,利用请求地址和请求参数可以表示请求消息的唯一身份,但是请求地址和请求参数不能够直接进行比较判断,为了便于进行比较判断,本方法将所述请求地址及请求参数转换为JSON字符串,然后使用encodeURIComponent函数对所述字符串进行编码获得第一标识信息,这样就获得了即能够唯一表示请求消息身份且能够进行比较判断的标识信息。
其中,在实际应用中可以有很多种方式进行转换和编码,但是本方法中选择了将请求地址及请求参数转换为JSON字符串,使用encodeURIComponent函数对字符串进行编码,目的是这种方式使用的函数都是JS语言本身自带的方法,调用简单并且能将请求对象直接进行序列化。encodeURIComponent方法也是浏览器本身自带的字符集替换。通过上述俩种方法基本就可以直接获得第一标识信息,如果使用特定的加密解密方式,在字符序列化的基础上还需要进行运行加密算法和解密算法,增长了函数的连用链路和执行过程,因此这种方式能够高效且准确的获得请求的标识。
申请人还研究发现现有技术在请求期间不能统一管理请求过程中对页面加载效果的影响。使得页面加载效果需要单独的应用进行操作,导致了页面加载管理复杂,效率较低且浪费资源,为了解决上述问题,本申请对本方法进行了再次改进,具体为:
若所述请求缓存池中不存在所述第一标识信息,本方法还包括以下步骤:
判断所述请求消息中是否包括页面加载请求;
若所述请求消息中包括页面加载请求,则执行所述页面加载请求,在浏览器页面中显示页面加载内容,获得所述请求结果数据后隐藏页面加载内容。
其中,本方法对请求消息进行了改进,增加了是否包括页面加载请求的选项,上述2次改进的原理是若请求缓存池中不存在所述第一标识信息,那么后续就需要发送该请求消息了,在发送前,本方法还包括判断请求消息中是否包括页面加载请求;若请求消息中包括页面加载请求,则执行所述页面加载请求,在浏览器页面中显示页面加载内容,获得所述请求结果数据后隐藏页面加载内容。即在氢气覍中增加了页面加载请求实现了能够通过请求消息对页面加载请求的高效管理,使得不需要单独的应用发起管理操作。
本方法中若所述请求消息中包括页面加载请求,则加载计数器的统计数目加一并执行该页面加载请求,在浏览器页面中显示页面加载内容,获得所述请求结果数据后,加载计数器的统计数目减一并隐藏页面加载内容。
其中,设计加载计数器可以方便对页面加载请求进行统计和管理,可以避免多次重复加载也可以避免漏掉加载请求。
下面举例对本发明进行详细介绍:
在消息处理前需要进行相应的赋能流程,包括:
增加前端应用接口请求文件,增加基础的请求拦截器。
前端应用入口文件增加页面全局加载效果实现方式,修改加载效果为项目所需样式。
在接口请求文件里,增加全局加载计数器、显示加载效果与隐藏加载效果方式等模块。
具体细节实现:
新增一个全局的加载计数器变量,初始值默认为0;
新增一个显示加载效果的函数:用于新增加载DOM节点并赋值属性,然后插入到HTML文档流末尾。
新增一个隐藏加载效果的函数:用于找到加载DOM节点,并将找到的加载DOM节点从HTML文档流中移除。
在请求拦截器的请求头模块中,通过识别请求配置中是否包含需要加载请求效果,需要则执行显示加载效果,不需要则略过。
在请求拦截器的响应头模块中,执行隐藏加载效果,结束页面加载效果。
应用流程:
页面请求时引入封装好的请求实例;
按照约定的参数配置发起请求方法。
请参考图1,图1为本方法中携带页面加载效果的请求处理流程示意图,具体流程为:发起请求->加载效果->请求结束->隐藏加载效果->页面展示最新结果。
为避免重复发起请求,具体的实现方式为:
增加前端应用接口请求文件,进行基础的请求拦截器新增。
在接口请求文件里,增加请求缓存池对象,生成请求唯一键(即第一标识信息)等模块。
具体细节实现:
新增一个全局的缓存池对象,初始值默认为空对象;
新增一个获取请求唯一键的函数方法:通过将请求头中的请求地址及请求参数进先进行JSON字符串处理,然后再将得到的字符串使用encodeURIComponent方法进行UTF-8编码的转义序列替换,最后得到的编码字符串作为请求唯一键。
在请求拦截器请求头模块中,通过生成请求唯一键方法。获得该请求唯一标识,验证标识是否存在与请求缓存池中,存在则取消请求。不存在则继续执行请求流程并将该请求唯一标识加入到请求缓存池中。
具体细节实现:
判断请求唯一键是否存在于请求缓存池对象中:将请求头中的config字段作为函数参数传入值,传入生成请求唯一键函数,判断请求缓存池对象中是否存在与唯一键相同的属性;
不存在就将唯一键作为对象属性进行赋值操作;
存在就进行错误抛出用于中断请求流程;
在请求拦截器响应头模块中,执行生成请求唯一键方法,获取该请求唯一标识,确认请求返回后,将该请求唯一标识从请求缓存池中清除。
请参考图2,图2为本方法中避免重复发起请求的请求处理流程示意图,正常流程:发起请求->确认是否存在缓存池中->未存在缓存池中,缓存池中新增当前请求标识->请求结束->请求缓存池中唯一标识清除->页面展示最新结果
重复请求流程:发起请求->确认是否存在缓存池中->存在与缓存池中->中断请求流程。
请求拦截器由,请求头模块及响应头俩个模块构成,在请求头拦截器函数中,可以将请求所需的一些字段,加入到请求头上,并且可以进行一些判断,决定是否发起此次请求。在响应头拦截器函数中,负责将请求返回数据进行处理,一般将请求错误分类响应放在这个部分。
通过将请求头中的请求地址及请求参数进先进行JSON字符串处理,然后再将得到的字符串使用encodeURIComponent方法进行UTF-8编码的转义序列替换,最后得到的编码字符串作为请求唯一键。的作用就是,使用接口本身的信息,通过一系列算法,得到这个请求的唯一键,使用唯一键确认是否是同一个请求发起了多次,可以通过其他处理字符传的形式,比如特定的加密解密方法,本方法采用了最方便的处理方式,这样最简单能获得唯一键,这种方式能够高效且准确的获得请求的标识,这种方式使用的函数都是JS语言本身自带的方法,调用简单并且能将请求对象直接进行序列化。encodeURIComponent方法也是浏览器本身自带的字符集替换。通过上述俩种方法基本就可以直接获得唯一键,如果你使用特定的加密解密方式,在字符序列化的基础上还需要进行运行加密算法和解密算法,增长了函数的连用链路和执行过程
实施例二
请参考图3,图3为前端应用请求消息的处理系统的组成示意图,本发明实施例二提供了一种前端应用请求消息的处理系统,所述系统包括:
请求拦截器,所述请求拦截器用于拦截前端应用发起的请求消息,对所述请求消息进行处理,获得所述请求消息的第一标识信息;
判断单元,所述判断单元用于判断请求缓存池中是否存在所述第一标识信息;
处理单元,所述处理单用于若所述请求缓存池中存在所述第一标识信息,则取消所述请求消息;以及用于若所述请求缓存池中不存在所述第一标识信息,则通过浏览器发送所述请求消息并在所述请求缓存池中添加所述第一标识信息,在获得所述请求消息对应的请求结果数据后将所述缓存池中的所述第一标识信息删除。
实施例三
本发明实施例三提供了一种前端应用请求消息的处理装置,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现所述前端应用请求消息的处理方法的步骤。
实施例四
本发明实施例四提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现所述前端应用请求消息的处理方法的步骤。
其中,所述处理器可以是中央处理器(CPU,Central Processing Unit),还可以是其他通用处理器、数字信号处理器(digital signal processor)、专用集成电路(Application Specific Integrated Circuit)、现成可编程门阵列(Fieldprogrammablegate array)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器可用于存储所述计算机程序和/或模块,所述处理器通过运行或执行存储在所述存储器内的数据,实现发明中前端应用请求消息的处理装置的各种功能。所述存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等。此外,存储器可以包括高速随机存取存储器、还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,智能存储卡,安全数字卡,闪存卡、至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
所述前端应用请求消息的处理装置如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序可存储于一计算机可读存介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码、对象代码形式、可执行文件或某些中间形式等。所述计算机可读取介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器、随机存储器、点载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减。
本发明已对基本概念做了描述,显然,对于本领域技术人员来说,上述详细披露仅仅作为示例,而并不构成对本说明书的限定。虽然此处并没有明确说明,本领域技术人员可能会对本说明书进行各种修改、改进和修正。该类修改、改进和修正在本说明书中被建议,所以该类修改、改进、修正仍属于本说明书示范实施例的精神和范围。
同时,本说明书使用了特定词语来描述本说明书的实施例。如“一个实施例”、“一实施例”、和/或“一些实施例”意指与本说明书至少一个实施例相关的某一特征、结构或特点。因此,应强调并注意的是,本说明书中在不同位置两次或多次提及的“一实施例”或“一个实施例”或“一个替代性实施例”并不一定是指同一实施例。此外,本说明书的一个或多个实施例中的某些特征、结构或特点可以进行适当的组合。
此外,本领域技术人员可以理解,本说明书的各方面可以通过若干具有可专利性的种类或情况进行说明和描述,包括任何新的和有用的工序、机器、产品或物质的组合,或对他们的任何新的和有用的改进。相应地,本说明书的各个方面可以完全由硬件执行、可以完全由软件(包括固件、常驻软件、微码等)执行、也可以由硬件和软件组合执行。以上硬件或软件均可被称为“数据块”、“模块”、“引擎”、“单元”、“组件”或“系统”。此外,本说明书的各方面可能表现为位于一个或多个计算机可读介质中的计算机产品,该产品包括计算机可读程序编码。
计算机存储介质可能包含一个内含有计算机程序编码的传播数据信号,例如在基带上或作为载波的一部分。该传播信号可能有多种表现形式,包括电磁形式、光形式等,或合适的组合形式。计算机存储介质可以是除计算机可读存储介质之外的任何计算机可读介质,该介质可以通过连接至一个指令执行系统、装置或设备以实现通讯、传播或传输供使用的程序。位于计算机存储介质上的程序编码可以通过任何合适的介质进行传播,包括无线电、电缆、光纤电缆、RF、或类似介质,或任何上述介质的组合。
本说明书各部分操作所需的计算机程序编码可以用任意一种或多种程序语言编写,包括面向对象编程语言如Java、Scala、Smalltalk、Eiffel、JADE、Emerald、C++、C#、VB.NET、Python等,常规程序化编程语言如C语言、Visual Basic、Fortran 2003、Perl、COBOL 2002、PHP、ABAP,动态编程语言如Python、Ruby和Groovy,或其他编程语言等。该程序编码可以完全在用户计算机上运行、或作为独立的软件包在用户计算机上运行、或部分在用户计算机上运行部分在远程计算机运行、或完全在远程计算机或服务器上运行。在后种情况下,远程计算机可以通过任何网络形式与用户计算机连接,比如局域网(LAN)或广域网(WAN),或连接至外部计算机(例如通过因特网),或在云计算环境中,或作为服务使用如软件即服务(SaaS)。
此外,除非权利要求中明确说明,本说明书所述处理元素和序列的顺序、数字字母的使用、或其他名称的使用,并非用于限定本说明书流程和方法的顺序。尽管上述披露中通过各种示例讨论了一些目前认为有用的发明实施例,但应当理解的是,该类细节仅起到说明的目的,附加的权利要求并不仅限于披露的实施例,相反,权利要求旨在覆盖所有符合本说明书实施例实质和范围的修正和等价组合。例如,虽然以上所描述的系统组件可以通过硬件设备实现,但是也可以只通过软件的解决方案得以实现,如在现有的服务器或移动设备上安装所描述的系统。
同理,应当注意的是,为了简化本说明书披露的表述,从而帮助对一个或多个发明实施例的理解,前文对本说明书实施例的描述中,有时会将多种特征归并至一个实施例、附图或对其的描述中。但是,这种披露方法并不意味着本说明书对象所需要的特征比权利要求中提及的特征多。实际上,实施例的特征要少于上述披露的单个实施例的全部特征。
针对本说明书引用的每个专利、专利申请、专利申请公开物和其他材料,如文章、书籍、说明书、出版物、文档等,特此将其全部内容并入本说明书作为参考。与本说明书内容不一致或产生冲突的申请历史文件除外,对本说明书权利要求最广范围有限制的文件(当前或之后附加于本说明书中的)也除外。需要说明的是,如果本说明书附属材料中的描述、定义、和/或术语的使用与本说明书所述内容有不一致或冲突的地方,以本说明书的描述、定义和/或术语的使用为准。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (8)
1.一种前端应用请求消息的处理方法,其特征在于,所述方法包括:
请求拦截器拦截前端应用发起的请求消息,对所述请求消息进行处理,获得所述请求消息的第一标识信息;
判断请求缓存池中是否存在所述第一标识信息;
若所述请求缓存池中存在所述第一标识信息,则取消所述请求消息;
若所述请求缓存池中不存在所述第一标识信息,则通过浏览器发送所述请求消息并在所述请求缓存池中添加所述第一标识信息,在获得所述请求消息对应的请求结果数据后将所述缓存池中的所述第一标识信息删除;
若所述请求缓存池中不存在所述第一标识信息,本方法还包括以下步骤:
判断所述请求消息中是否包括页面加载请求;
若所述请求消息中包括页面加载请求,则执行所述页面加载请求,在浏览器页面中显示页面加载内容,获得所述请求结果数据后隐藏页面加载内容;
本方法通过所述请求拦截器的请求头模块识别所述请求消息的请求配置中是否包括页面加载请求,若包括页面加载请求,则所述请求头模块生成页面加载指令,并将所述页面加载指令发送至浏览器,浏览器基于所述页面加载指令在页面中显示页面加载内容;
本方法在获得所述请求结果数据后,通过所述请求拦截器的响应头模块生成隐藏页面加载内容指令,并将所述隐藏页面加载内容指令发送至浏览器,浏览器基于所述隐藏页面加载内容指令隐藏页面加载内容。
2.根据权利要求1所述的一种前端应用请求消息的处理方法,其特征在于,本方法获得所述请求消息的第一标识信息包括以下步骤:
获得所述请求消息中的请求地址及请求参数;
将所述请求地址及请求参数转换为字符串;
将所述字符串进行编码获得所述第一标识信息。
3.根据权利要求2所述的一种前端应用请求消息的处理方法,其特征在于,将所述请求地址及请求参数转换为JSON字符串。
4.根据权利要求2所述的一种前端应用请求消息的处理方法,其特征在于,使用encodeURIComponent函数对所述字符串进行编码。
5.根据权利要求1所述的一种前端应用请求消息的处理方法,其特征在于,若所述请求消息中包括页面加载请求,则加载计数器的统计数目加一并执行该页面加载请求,在浏览器页面中显示页面加载内容,获得所述请求结果数据后,加载计数器的统计数目减一并隐藏页面加载内容。
6.一种前端应用请求消息的处理系统,其特征在于,所述系统包括:
请求拦截器,所述请求拦截器用于拦截前端应用发起的请求消息,对所述请求消息进行处理,获得所述请求消息的第一标识信息;
判断单元,所述判断单元用于判断请求缓存池中是否存在所述第一标识信息;
处理单元,所述处理单用于若所述请求缓存池中存在所述第一标识信息,则取消所述请求消息;以及用于若所述请求缓存池中不存在所述第一标识信息,则通过浏览器发送所述请求消息并在所述请求缓存池中添加所述第一标识信息,在获得所述请求消息对应的请求结果数据后将所述缓存池中的所述第一标识信息删除;
若所述请求缓存池中不存在所述第一标识信息,所述处理单元还用于:
判断所述请求消息中是否包括页面加载请求;
若所述请求消息中包括页面加载请求,则执行所述页面加载请求,在浏览器页面中显示页面加载内容,获得所述请求结果数据后隐藏页面加载内容;
本系统通过所述请求拦截器的请求头模块识别所述请求消息的请求配置中是否包括页面加载请求,若包括页面加载请求,则所述请求头模块生成页面加载指令,并将所述页面加载指令发送至浏览器,浏览器基于所述页面加载指令在页面中显示页面加载内容;
本系统在获得所述请求结果数据后,通过所述请求拦截器的响应头模块生成隐藏页面加载内容指令,并将所述隐藏页面加载内容指令发送至浏览器,浏览器基于所述隐藏页面加载内容指令隐藏页面加载内容。
7.一种前端应用请求消息的处理装置,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1-5中任意一个所述一种前端应用请求消息的处理方法的步骤。
8.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-5中任意一个所述一种前端应用请求消息的处理方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210268404.3A CN114745363B (zh) | 2022-03-18 | 2022-03-18 | 一种前端应用请求消息的处理方法及系统及装置及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210268404.3A CN114745363B (zh) | 2022-03-18 | 2022-03-18 | 一种前端应用请求消息的处理方法及系统及装置及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114745363A CN114745363A (zh) | 2022-07-12 |
CN114745363B true CN114745363B (zh) | 2023-12-15 |
Family
ID=82277764
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210268404.3A Active CN114745363B (zh) | 2022-03-18 | 2022-03-18 | 一种前端应用请求消息的处理方法及系统及装置及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114745363B (zh) |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108985092A (zh) * | 2017-06-05 | 2018-12-11 | 北京京东尚科信息技术有限公司 | 提交请求的过滤方法、装置、电子设备和存储介质 |
CN109040339A (zh) * | 2018-07-27 | 2018-12-18 | 深圳市腾讯网络信息技术有限公司 | 基于ajax的跨域请求处理方法、装置及设备 |
CN109948085A (zh) * | 2017-11-23 | 2019-06-28 | 广州市动景计算机科技有限公司 | 浏览器内核初始化方法、装置、计算设备和存储介质 |
CN110727890A (zh) * | 2019-08-22 | 2020-01-24 | 中国平安财产保险股份有限公司 | 一种页面加载方法、装置及计算机设备、存储介质 |
CN110990733A (zh) * | 2019-10-31 | 2020-04-10 | 合肥美的电冰箱有限公司 | 页面加载方法、装置、电子设备及介质 |
CN111159595A (zh) * | 2019-12-24 | 2020-05-15 | 平安养老保险股份有限公司 | 页面加载方法、系统、计算机设备和计算机可读存储介质 |
CN111522599A (zh) * | 2020-04-13 | 2020-08-11 | 百度在线网络技术(北京)有限公司 | 用于发送信息的方法和装置 |
CN111787092A (zh) * | 2020-06-29 | 2020-10-16 | 山东浪潮通软信息科技有限公司 | 重复提交请求的过滤方法、装置及可读介质 |
CN112003947A (zh) * | 2020-08-26 | 2020-11-27 | 山东恒远智能科技有限公司 | 一种防止客户端向服务器重复请求的系统和验证方法 |
CN113391858A (zh) * | 2021-07-12 | 2021-09-14 | 苏州达家迎信息技术有限公司 | 客户端中的页面加载方法、装置、计算机设备及介质 |
CN114186148A (zh) * | 2021-11-16 | 2022-03-15 | 深圳云天励飞技术股份有限公司 | 页面加载方法、装置、电子设备及存储介质 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7571219B2 (en) * | 2004-12-16 | 2009-08-04 | Sap Ag | Preserving and accessing active components in web pages |
US20170293593A1 (en) * | 2016-04-12 | 2017-10-12 | International Business Machines Corporation | Managing node pagination for a graph data set |
-
2022
- 2022-03-18 CN CN202210268404.3A patent/CN114745363B/zh active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108985092A (zh) * | 2017-06-05 | 2018-12-11 | 北京京东尚科信息技术有限公司 | 提交请求的过滤方法、装置、电子设备和存储介质 |
CN109948085A (zh) * | 2017-11-23 | 2019-06-28 | 广州市动景计算机科技有限公司 | 浏览器内核初始化方法、装置、计算设备和存储介质 |
CN109040339A (zh) * | 2018-07-27 | 2018-12-18 | 深圳市腾讯网络信息技术有限公司 | 基于ajax的跨域请求处理方法、装置及设备 |
CN110727890A (zh) * | 2019-08-22 | 2020-01-24 | 中国平安财产保险股份有限公司 | 一种页面加载方法、装置及计算机设备、存储介质 |
CN110990733A (zh) * | 2019-10-31 | 2020-04-10 | 合肥美的电冰箱有限公司 | 页面加载方法、装置、电子设备及介质 |
CN111159595A (zh) * | 2019-12-24 | 2020-05-15 | 平安养老保险股份有限公司 | 页面加载方法、系统、计算机设备和计算机可读存储介质 |
CN111522599A (zh) * | 2020-04-13 | 2020-08-11 | 百度在线网络技术(北京)有限公司 | 用于发送信息的方法和装置 |
CN111787092A (zh) * | 2020-06-29 | 2020-10-16 | 山东浪潮通软信息科技有限公司 | 重复提交请求的过滤方法、装置及可读介质 |
CN112003947A (zh) * | 2020-08-26 | 2020-11-27 | 山东恒远智能科技有限公司 | 一种防止客户端向服务器重复请求的系统和验证方法 |
CN113391858A (zh) * | 2021-07-12 | 2021-09-14 | 苏州达家迎信息技术有限公司 | 客户端中的页面加载方法、装置、计算机设备及介质 |
CN114186148A (zh) * | 2021-11-16 | 2022-03-15 | 深圳云天励飞技术股份有限公司 | 页面加载方法、装置、电子设备及存储介质 |
Non-Patent Citations (2)
Title |
---|
A novel adaptive code block group hybrid automatic repeat request scheme for low earth orbit satellite networks;Zhongliang Deng, Hao Liu, Ke Wang, Wenliang Lin, Xiaoyi Yu, Shixuan Zheng;《Wiley》;全文 * |
axios 的二次封装(拦截重复请求、异常统一处理);luzhuqun;《https://www.ucloud.cn/yun/97903.html》;第1,8-9页 * |
Also Published As
Publication number | Publication date |
---|---|
CN114745363A (zh) | 2022-07-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20170011060A1 (en) | System and method for distributed categorization | |
CN109388626B (zh) | 用于向业务分配编号的方法和装置 | |
CN104503780A (zh) | 一种提供应用渠道包的方法和装置 | |
CN108449187B (zh) | 一种令牌刷新的方法及装置 | |
US11449352B2 (en) | Systems and methods for converting record formats | |
CN111324615A (zh) | 数据处理方法、装置、介质及电子设备 | |
CN111803917B (zh) | 资源的处理方法和装置 | |
CN113765818A (zh) | 分布式限流方法、装置、设备、存储介质和系统 | |
US20150113502A1 (en) | Method and system for encapsulation of application | |
US20150113506A1 (en) | Method and system for adaptive loading of application | |
CN111144878A (zh) | 指令生成方法与指令生成装置 | |
CN109725887B (zh) | 基于消息研发框架的数据交互方法、装置及终端设备 | |
US11755534B2 (en) | Data caching method and node based on hyper-converged infrastructure | |
CN114745363B (zh) | 一种前端应用请求消息的处理方法及系统及装置及介质 | |
CN113391925A (zh) | 云资源管理方法、系统、介质、计算机设备 | |
CN112988127A (zh) | Cdn业务定制方法及系统 | |
WO2021008061A1 (en) | Systems and methods for live streaming | |
CN105743890B (zh) | 权限信息生成方法和装置 | |
US8280950B2 (en) | Automatic client-server code generator | |
CN110688594A (zh) | 网页前端的页面跳转方法及装置 | |
CN114090083B (zh) | 一种可视化组件配置方法、装置、设备及存储介质 | |
CN115080147A (zh) | 基于人工智能的h5页面加载方法、装置、设备及介质 | |
CN111400623B (zh) | 用于搜索信息的方法和装置 | |
CN112784139A (zh) | 查询方法、装置、电子设备和计算机可读介质 | |
US20200067913A1 (en) | Modifying an identity token based on a trusted service |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |