一种请求调用防御方法及相关设备与流程

文档序号:31330525发布日期:2022-08-31 06:54阅读:54来源:国知局
一种请求调用防御方法及相关设备与流程

1.本公开涉及计算机技术领域,尤其涉及一种请求调用防御方法及相关设备。


背景技术:

2.随着互联网技术的进步,基于h5页面或小程序可实时发布且实施的特点,越来越多的互联网产品逐步由原生终端向h5页面或小程序发展。由于小程序和h5页面不具备直接访问终端设备的能力,需要调用相应的接口,以通过接口调用相关的功能为用户提供服务。
3.由于用户端的能力需求越来越大,h5页面或小程序相应的接口调用也越来越多。在一些接口调用时,例如:弹框调用请求,若不经意连续调用多次,将弹窗多次,如只想弹一次,需要在用户端提供大量判断逻辑,容易造成用户端逻辑臃肿、维护难度大,容易造成用户端卡顿,降低用户端的稳定性。


技术实现要素:

4.鉴于上述问题,本公开提供一种克服上述问题或者至少部分地解决上述问题的一种请求调用防御方法及相关设备,技术方案如下:
5.一种请求调用防御方法,包括:
6.获得用户端发送的接口调用请求,其中,所述接口调用请求包括接口分类标识;
7.确定与所述接口分类标识对应的接口类别分组;
8.获得与所述接口类别分组对应的请求调用防御策略;
9.利用所述请求调用防御策略对所述接口调用请求进行处理,获得请求处理结果;
10.将所述请求处理结果发送至所述用户端。
11.可选的,所述接口类别分组包括实时响应组、重复调用组以及弹框组。
12.可选的,所述利用所述请求调用防御策略对所述接口调用请求进行处理,获得请求处理结果,包括:
13.在所述接口类别分组为所述实时响应组的情况下,执行与所述实时响应组对应的所述调用防御策略,响应所述接口调用请求,获得请求响应结果;
14.确定所述请求响应结果为请求处理结果。
15.可选的,所述利用所述请求调用防御策略对所述接口调用请求进行处理,获得请求处理结果,包括:
16.在所述接口类别分组为所述重复调用组的情况下,执行与所述重复调用组对应的所述调用防御策略,不响应所述接口调用请求,生成正在运行信息;
17.确定所述正在运行信息为请求处理结果。
18.可选的,所述利用所述请求调用防御策略对所述接口调用请求进行处理,获得请求处理结果,包括:
19.在所述接口类别分组为所述弹框组的情况下,执行与所述弹框组对应的所述调用防御策略,确定所述接口调用请求所请求的弹框是否已弹出,如果是,则生成对话框已显示
信息;
20.确定所述对话框已显示信息为请求处理结果。
21.可选的,所述接口分类标识为所述接口调用请求的名称。
22.可选的,所述方法应用于sdk端。
23.一种请求调用防御装置,包括:请求获得单元、类别分组确定单元、防御策略获得单元、请求处理结果获得单元以及请求处理结果发送单元,
24.所述请求获得单元,用于获得用户端发送的接口调用请求,其中,所述接口调用请求包括接口分类标识;
25.所述类别分组确定单元,用于确定与所述接口分类标识对应的接口类别分组;
26.所述防御策略获得单元,用于获得与所述接口类别分组对应的请求调用防御策略;
27.所述请求处理结果获得单元,用于利用所述请求调用防御策略对所述接口调用请求进行处理,获得请求处理结果;
28.所述请求处理结果发送单元,用于将所述请求处理结果发送至所述用户端。
29.一种计算机可读存储介质,其上存储有程序,所述程序被处理器执行时实现上述任一项所述的请求调用防御方法。
30.一种电子设备,所述电子设备包括至少一个处理器、以及与处理器连接的至少一个存储器、总线;其中,所述处理器、所述存储器通过所述总线完成相互间的通信;所述处理器用于调用所述存储器中的程序指令,以执行上述任一项所述的请求调用防御方法。
31.借由上述技术方案,本公开提供的一种请求调用防御方法及相关设备,获得用户端发送的接口调用请求,其中,所述接口调用请求包括接口分类标识;确定与所述接口分类标识对应的接口类别分组;获得与所述接口类别分组对应的请求调用防御策略;利用所述请求调用防御策略对所述接口调用请求进行处理,获得请求处理结果;将所述请求处理结果发送至所述用户端。本公开通过对接口调用请求进行归类分组,在获得任一接口类别分组下的接口调用请求的情况下,能够触发相应的请求调用防御策略进行防御,避免在用户端编写大量判断逻辑,便于用户端的开发和维护,提高用户端的稳定性。
32.上述说明仅是本公开技术方案的概述,为了能够更清楚了解本公开的技术手段,而可依照说明书的内容予以实施,并且为了让本公开的上述和其它目的、特征和优点能够更明显易懂,以下特举本公开的具体实施方式。
附图说明
33.通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本公开的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
34.图1示出了本公开实施例提供的请求调用防御方法的一种实施方式的流程示意图;
35.图2示出了本公开实施例提供的请求调用防御方法的另一种实施方式的流程示意图;
36.图3示出了本公开实施例提供的请求调用防御方法的另一种实施方式的流程示意
图;
37.图4示出了本公开实施例提供的请求调用防御方法的另一种实施方式的流程示意图;
38.图5示出了本公开实施例提供的对接口调用请求的主动防御过程的时序流程图;
39.图6示出了本公开实施例提供的请求调用防御装置的一种结构示意图;
40.图7示出了本公开实施例提供的电子设备的一种结构示意图。
具体实施方式
41.下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
42.如图1所示,本公开实施例提供的请求调用防御方法的一种实施方式的流程示意图,该请求调用方法可以包括:
43.s100、获得用户端发送的接口调用请求,其中,接口调用请求包括接口分类标识。
44.其中,用户端可以是能够与用户进行交互、具有可视用户界面,为完成一项或多项特定工作的计算机程序。接口调用请求可以是用户在用户界面对任一功能进行交互操作后对应生成的请求。可选的,接口调用请求可以是以java script为编程语言形式下的应用程序编程接口(jsapi)。基于接口调用请求,通过接口可以在相应的软件开发工具包(software developmentkit,sdk)中调用相应的功能内容并反馈给用户端。
45.本公开实施例可以根据实际需求对不同的接口调用请求进行归类分组,确定每个接口类别分组下的接口调用请求。可选的,接口类别分组可以包括实时响应组、重复调用组以及弹框组。
46.在通常情况下,实时响应组可以包括网购秒杀类的接口调用请求。重复调用组可以包括消耗性能类(例如:获得设备信息、拍照)的接口调用请求。弹框为因点击或其他情景触发产生的信息承载框,该信息承载框可与用户产生交互行为或提示。弹框组为弹出信息承载框的接口调用请求。
47.可选的,接口分类标识为接口调用请求的名称。本公开实施例可以预先配置各个接口类别分组下的接口调用请求的名称,以便根据接口调用请求的名称,确定接口调用请求对应的接口类别分组。
48.s200、确定与接口分类标识对应的接口类别分组。
49.s300、获得与接口类别分组对应的请求调用防御策略。
50.具体的,本公开实施例可以根据实际需求预先设置与各接口类别分组对应的请求调用防御策略。本公开实施例可以在获得请求调用防御策略的情况下,执行该请求调用防御策略,在该请求调用防御策略的基础上对接口调用请求进行处理。
51.可选的,本公开实施例对实时响应组对应的请求调用防御策略具体可以为空,即不防御。本公开实施例在执行请求调用防御策略为空的情况下,可以直接响应接口调用请求。
52.可选的,本公开实施例对重复调用组对应的请求调用防御策略可以为拒绝响应。
本公开实施例在执行请求调用防御策略为拒绝响应的情况下,拒绝响应接口调用请求,并生成与相应功能对应的正在运行信息,以便返回至用户端。
53.可选的,本公开实施例对弹框组对应的请求调用防御策略为:在弹框已弹出的情况下,生成对话框已显示信息(dialog),以便返回至用户端。
54.s400、利用请求调用防御策略对接口调用请求进行处理,获得请求处理结果。
55.可选的,基于图1所示方法,如图2所示,本公开实施例提供的请求调用防御方法的另一种实施方式的流程示意图,步骤s400可以包括:
56.s410、在接口类别分组为实时响应组的情况下,执行与实时响应组对应的调用防御策略,响应接口调用请求,获得请求响应结果。
57.s420、确定请求响应结果为请求处理结果。
58.本公开实施例通过对实时响应组下的接口调用请求进行直接响应,能够满足用户对网购秒杀功能的需求,为用户提供丰富的交互功能。
59.可选的,基于图1所示方法,如图3所示,本公开实施例提供的请求调用防御方法的另一种实施方式的流程示意图,步骤s400可以包括:
60.s430、在接口类别分组为重复调用组的情况下,执行与重复调用组对应的调用防御策略,不响应接口调用请求,生成正在运行信息。
61.s440、确定正在运行信息为请求处理结果。
62.本公开实施例通过拒绝响应重复调用组下的接口调用请求,防止重复的消耗性能的接口调用请求短时间内多次响应,避免计算机资源浪费。
63.可选的,基于图1所示方法,如图4所示,本公开实施例提供的请求调用防御方法的另一种实施方式的流程示意图,步骤s400可以包括:
64.s450、在接口类别分组为弹框组的情况下,执行与弹框组对应的调用防御策略,确定接口调用请求所请求的弹框是否已弹出,如果是,则执行步骤s460。
65.s460、生成对话框已显示信息。
66.s470、确定对话框已显示信息为请求处理结果。
67.本公开实施例可以对弹框组下的接口调用请求,判断弹框是否已弹出,在弹框未弹出的情况下,可以响应该接口调用请求,获得请求响应结果,并将请求响应结果作为请求处理结果。在弹框已弹出的情况下,拒绝响应该接口调用请求,生成对话框已显示信息,并将对话框已显示信息作为请求处理结果。
68.s500、将请求处理结果发送至用户端。
69.可以理解的是,本公开实施例可以将请求处理结果发送至用户端,以通过用户端向用户展示与接口调用请求有关的提示。
70.本公开提供的一种请求调用防御方法,获得用户端发送的接口调用请求,其中,接口调用请求包括接口分类标识;确定与接口分类标识对应的接口类别分组;获得与接口类别分组对应的请求调用防御策略;利用请求调用防御策略对接口调用请求进行处理,获得请求处理结果;将请求处理结果发送至用户端。本公开通过对接口调用请求进行归类分组,在获得任一接口类别分组下的接口调用请求的情况下,能够触发相应的请求调用防御策略进行防御,避免在用户端编写大量判断逻辑,便于用户端的开发和维护,提高用户端的稳定性。
71.可选的,本公开实施例提供的请求调用防御方法可以应用于sdk端。
72.本公开实施例通过在sdk端设置的接口类别分组,为不同的接口类别分组配置相应的请求调用防御策略,在请求调用防御策略有变动的情况下,可以更改接口调用请求对应的请求调用防御策略,方便sdk端的维护。同时,基于请求调用防御策略,可以避免用户端随意调用sdk端的资源,直接提升了sdk端的稳定性。对于用户端无需关注接口调用请求的防御,能够方便开发或维护人员聚焦于用户端所需要实现的业务逻辑,也间接提高了用户端的稳定性。
73.其中,sdk端可以包括接口逻辑组和工具逻辑组。由接口逻辑组获得用户端发送的接口调用请求,并确定该接口调用请求对应的接口类别分组,并在工具逻辑组获得与该接口类别分组对应的请求调用防御策略并执行,由工具逻辑组向接口逻辑组返回防御结果,由接口逻辑组根据防御结果确定是否响应该接口调用请求并向用户端返回相关提示信息。
74.为了便于理解本公开提供的请求调用防御方法的整体方案,此处结合图5进行说明:图5所示为对接口调用请求的主动防御过程的时序流程图,该主动防御过程包括:
75.a01、调用方发起jsapi调用请求至jsapi抽象组模块。
76.a02、jsapi抽象组模块获取与该jsapi调用请求对应的接口类别分组。
77.a03、jsapi抽象组模块向防御抽象策略模块发送与该接口类别分组对应防御策略请求。
78.a04、防御抽象策略模块获得与该接口类别分组对应的请求调用防御策略。
79.a05、防御抽象策略模块自动触发该请求调用防御策略,获得防御结果。
80.a06、防御抽象策略模块向jsapi抽象组模块返回防御结果。
81.a07、jsapi抽象组模块进行防御结果判断。
82.a08、jsapi抽象组模块在该防御结果为未防御的情况下,正常执行jsapi调用请求。
83.a09、jsapi抽象组模块在该防御结果为防御生效的情况下,将防御结果返回给调用方。
84.本公开实施例通过确定jsapi对应的接口类别分组,自动触发对应的防御机制,避免了编写大量判断逻辑,便于开发者聚焦于业务内容,提升开发效率。
85.虽然采用特定次序描绘了各操作,但是这不应当理解为要求这些操作以所示出的特定次序或以顺序次序执行来执行。在一定环境下,多任务和并行处理可能是有利的。
86.应当理解,本公开的方法实施方式中记载的各个步骤可以按照不同的顺序执行,和/或并行执行。此外,方法实施方式可以包括附加的步骤和/或省略执行示出的步骤。本公开的范围在此方面不受限制。
87.与上述方法实施例相对应,本公开实施例还提供一种请求调用防御装置,其结构如图6所示,可以包括:请求获得单元100、类别分组确定单元200、防御策略获得单元300、请求处理结果获得单元400以及请求处理结果发送单元500。
88.所述请求获得单元100,用于获得用户端发送的接口调用请求,其中,所述接口调用请求包括接口分类标识;
89.所述类别分组确定单元200,用于确定与所述接口分类标识对应的接口类别分组;
90.所述防御策略获得单元300,用于获得与所述接口类别分组对应的请求调用防御
策略;
91.所述请求处理结果获得单元400,用于利用所述请求调用防御策略对所述接口调用请求进行处理,获得请求处理结果;
92.所述请求处理结果发送单元500,用于将所述请求处理结果发送至所述用户端。
93.可选的,所述接口类别分组包括实时响应组、重复调用组以及弹框组。
94.可选的,所述请求处理结果获得单元400可以包括:第一获得子单元和第一确定子单元。
95.第一获得子单元,用于在所述接口类别分组为所述实时响应组的情况下,执行与所述实时响应组对应的所述调用防御策略,响应所述接口调用请求,获得请求响应结果。
96.第一确定子单元,用于确定所述请求响应结果为请求处理结果。
97.可选的,所述请求处理结果获得单元400可以包括:第二获得子单元和第二确定子单元。
98.第二获得子单元,用于在所述接口类别分组为所述重复调用组的情况下,执行与所述重复调用组对应的所述调用防御策略,不响应所述接口调用请求,生成正在运行信息。
99.第二确定子单元,用于确定所述正在运行信息为请求处理结果。
100.可选的,所述请求处理结果获得单元400可以包括:第三获得子单元和第三确定子单元。
101.第三获得子单元,用于在所述接口类别分组为所述弹框组的情况下,执行与所述弹框组对应的所述调用防御策略,确定所述接口调用请求所请求的弹框是否已弹出,如果是,则生成对话框已显示信息。
102.第三确定子单元,用于确定所述对话框已显示信息为请求处理结果。
103.可选的,所述接口分类标识为所述接口调用请求的名称。
104.可选的,本公开实施例提供的请求调用防御装置可以应用于sdk端。
105.本公开提供的一种请求调用防御装置,获得用户端发送的接口调用请求,其中,接口调用请求包括接口分类标识;确定与接口分类标识对应的接口类别分组;获得与接口类别分组对应的请求调用防御策略;利用请求调用防御策略对接口调用请求进行处理,获得请求处理结果;将请求处理结果发送至用户端。本公开通过对接口调用请求进行归类分组,在获得任一接口类别分组下的接口调用请求的情况下,能够触发相应的请求调用防御策略进行防御,避免在用户端编写大量判断逻辑,便于用户端的开发和维护,提高用户端的稳定性。
106.关于上述实施例中的装置,其中各个单元执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
107.所述请求调用防御装置包括处理器和存储器,上述请求获得单元、类别分组确定单元、防御策略获得单元、请求处理结果获得单元以及请求处理结果发送单元等均作为程序单元存储在存储器中,由处理器执行存储在存储器中的上述程序单元来实现相应的功能。
108.处理器中包含内核,由内核去存储器中调取相应的程序单元。内核可以设置一个或以上,通过调整内核参数来通过对接口调用请求进行归类分组,在获得任一接口类别分组下的接口调用请求的情况下,能够触发相应的请求调用防御策略进行防御,避免在用户
端编写大量判断逻辑,便于用户端的开发和维护,提高用户端的稳定性。
109.本公开实施例提供了一种计算机可读存储介质,其上存储有程序,该程序被处理器执行时实现所述请求调用防御方法。
110.本公开实施例提供了一种处理器,所述处理器用于运行程序,其中,所述程序运行时执行所述请求调用防御方法。
111.如图7所示,本公开实施例提供了一种电子设备1000,电子设备1000包括至少一个处理器1001、以及与处理器1001连接的至少一个存储器1002、总线1003;其中,处理器1001、存储器1002通过总线1003完成相互间的通信;处理器1001用于调用存储器1002中的程序指令,以执行上述的请求调用防御方法。本文中的电子设备可以是服务器、pc、pad、手机等。
112.本公开还提供了一种计算机程序产品,当在电子设备上执行时,适于执行初始化有请求调用防御方法步骤的程序。
113.本公开是参照根据本公开实施例的方法、装置、电子设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程设备的处理器以产生一个机器,使得通过计算机或其他可编程设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
114.在一个典型的配置中,电子设备包括一个或多个处理器(cpu)、存储器和总线。电子设备还可以包括输入/输出接口、网络接口等。
115.存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flashram),存储器包括至少一个存储芯片。存储器是计算机可读介质的示例。
116.计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
117.在本公开的描述中,需要理解的是,如若涉及术语“上”、“下”、“前”、“后”、“左”和“右”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的位置或元件必须具有特定方位、以特定的方位构成和操作,因此不能理解为本公开的限制。
118.需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品
或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
119.本领域技术人员应明白,本公开的实施例可提供为方法、系统或计算机程序产品。因此,本公开可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本公开可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
120.以上仅为本公开的实施例而已,并不用于限制本公开。对于本领域技术人员来说,本公开可以有各种更改和变化。凡在本公开的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本公开的权利要求范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1