CN116560876A - 应用程序接口识别方法、装置、系统及存储介质 - Google Patents
应用程序接口识别方法、装置、系统及存储介质 Download PDFInfo
- Publication number
- CN116560876A CN116560876A CN202310580150.3A CN202310580150A CN116560876A CN 116560876 A CN116560876 A CN 116560876A CN 202310580150 A CN202310580150 A CN 202310580150A CN 116560876 A CN116560876 A CN 116560876A
- Authority
- CN
- China
- Prior art keywords
- target
- browser
- interface
- information
- request
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 61
- 230000004044 response Effects 0.000 claims abstract description 11
- 230000008569 process Effects 0.000 claims abstract description 9
- 230000002159 abnormal effect Effects 0.000 claims description 6
- 238000001514 detection method Methods 0.000 claims description 5
- 239000008186 active pharmaceutical agent Substances 0.000 description 40
- 230000006870 function Effects 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 238000012545 processing Methods 0.000 description 6
- 238000004891 communication Methods 0.000 description 5
- 238000004590 computer program Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000003190 augmentative effect Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/547—Remote procedure calls [RPC]; Web services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44505—Configuring for program initiating, e.g. using registry, configuration files
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本公开关于一种应用程序接口识别方法、装置、系统及存储介质,涉及计算技术领域,解决了因API的识别能力受预设API特征库中存储的API特征种类的限制,而导致对API识别的准确度低的问题。该方法包括:代理服务器检测到浏览器的启动操作时,将目标程序代码插入至浏览器网页的网页信息中;目标程序代码用于对浏览器关联的接口的调用过程中的请求方式进行修改;接收浏览器返回的对目标接口的调用请求,并对调用请求中加密的目标信息进行解密,得到解密结果,以及根据解密结果对目标接口进行识别;该调用请求为浏览器发送的,且是浏览器响应于用户在浏览器网页上的目标操作,根据目标程序代码、目标接口对应的目标请求方式以及用户的目标信息生成的。
Description
技术领域
本公开涉及计算机技术领域,尤其涉及应用程序接口识别方法、装置、系统及存储介质。
背景技术
随着互联网技术的不断发展,网络数据流量中存在着大量的应用程序编程接口(Application Programming Interface,API)。并且,调用的API是否准确,是影响网络的有效管理和网络安全的关键。基于此,如何从有效地识别网络流量数据中的API是当前亟待解决的技术问题。
相关技术中,通过将调用请求中包括的待调用API的特征信息,与预设API特征库中多个API的特征进行匹配,以从多个API中识别出待调用API,以对识别出的API进行调用。然而,该识别方式的识别能力受预设API特征库中存储的API特征种类的限制,对于预设API特征库以外的API(如,新增在网络流量数据中的API)无法进行有效的识别,从而降低了对API识别的准确度。
发明内容
本发明提供一种应用程序接口识别方法、装置、系统及存储介质,以至少解决相关技术中因API的识别能力受预设API特征库中存储的API特征种类的限制,而导致对API识别的准确度低的问题。本发明的技术方案如下:
根据本发明实施例的第一方面,提供了一种应用程序接口识别方法,应用于代理服务器,代理服务器具有反向代理的功能,该方法包括:检测到浏览器的启动操作,将目标程序代码插入至浏览器网页的网页信息中;目标程序代码用于对浏览器关联的接口的调用过程中的请求方式进行修改;接收浏览器返回的对目标接口的调用请求,并对调用请求中加密的目标信息进行解密,得到解密结果;调用请求为浏览器发送的,且是浏览器响应于用户在浏览器网页上的目标操作,根据目标程序代码、目标接口对应的目标请求方式以及用户的目标信息生成的;根据解密结果对目标接口进行识别。
进一步地,根据解密结果确定目标接口是否异常,包括:在解密结果指示解密失败时,确定目标接口为异常接口,以及拒绝调用请求;在解密结果指示解密成功时,接受调用请求,以将目标接口调用至浏览器。
进一步地,浏览器响应于用户在浏览器网页上的目标操作,根据目标程序代码、目标接口对应的目标请求方式以及用户的目标信息生成的,具体包括:浏览器响应于用户在浏览器网页上的目标操作,采用目标程序代码对目标接口对应的目标请求方式进行修改;目标操作用于请求调用目标接口;浏览器按照修改后的目标请求方式,对用户的目标信息进行加密,以及根据加密的目标信息生成调用请求。
进一步地,检测到浏览器的启动操作,将目标程序代码插入至浏览器网页的网页信息中,包括:检测到浏览器的启动操作后,将目标程序代码与引擎标识关联;引擎标识指示存在目标程序代码;将引擎标识插入至浏览器网页的网页信息中。
进一步地,该方法还包括:获取目标接口的接口信息,接口信息至少包括请求信息、操作信息和上下文信息;根据目标接口对应的多个解密结果和接口信息,确定目标接口的服务类型。
进一步地,在检测到浏览器的启动操作,将目标程序代码插入至浏览器网页的网页信息中之前,该方法还包括:接收到浏览器发送的浏览器启动请求,代理服务器将浏览器启动请求转发至业务服务器;浏览器启动请求为用户在用户的终端设备上显示的浏览器标识执行触发操作时,浏览器发送的;接收到业务服务器返回的浏览器网页的页面显示信息;将接收到的页面显示信息发送至浏览器,以使浏览器为用户显示浏览器网页。
根据本发明实施例的第二方面,提供了另一种应用程序接口识别方法,应用于浏览器,该方法包括:
在浏览器网页的网页信息存在目标程序代码的情况下,响应于用户在浏览器网页上的目标操作,根据目标程序代码、目标接口对应的目标请求方式以及用户的目标信息,生成调用请求,调用请求包括加密的目标信息;向代理服务器发送调用请求,以使代理服务器对调用请求中目标信息进行解密,得到解密结果,并根据解密结果对目标接口进行识别。
进一步地,响应于用户在浏览器网页上的目标操作,根据目标程序代码、目标接口对应的目标请求方式以及用户的目标信息,生成调用请求,包括:响应于用户在浏览器网页上的目标操作,采用目标程序代码对目标接口对应的目标请求方式进行修改;目标操作用于请求调用目标接口;浏览器按照修改后的目标请求方式,对用户的目标信息进行加密,以及根据加密的目标信息生成调用请求。
进一步地,该方法还包括:确定浏览器网页的网页信息中存在引擎标识,以确定出浏览器网页的网页信息中的目标程序代码;引擎标识指示存在目标程序代码,引擎标识与目标程序代码关联。
根据本发明实施例的第三方面,提供了一种应用程序接口识别装置,应用于代理服务器,代理服务器具有反向代理的功能,装置包括:检测单元,被配置为检测到浏览器的启动操作,将目标程序代码插入至浏览器网页的网页信息中;目标程序代码用于对浏览器关联的接口的调用过程中的请求方式进行修改;接收单元,被配置为接收浏览器返回的对目标接口的调用请求,并对调用请求中加密的目标信息进行解密,得到解密结果;调用请求为浏览器发送的,且是浏览器响应于用户在浏览器网页上的目标操作,根据目标程序代码、目标接口对应的目标请求方式以及用户的目标信息生成的;识别单元,被配置为根据解密结果对目标接口进行识别。
根据本发明实施例的第四方面,提供了另一种应用程序接口识别装置,应用于浏览器,该装置包括:生成单元,被配置为在浏览器网页的网页信息存在目标程序代码的情况下,响应于用户在浏览器网页上的目标操作,根据目标程序代码、目标接口对应的目标请求方式以及用户的目标信息,生成调用请求,调用请求包括加密的目标信息;发送单元,被配置为向代理服务器发送调用请求,以使代理服务器对调用请求中目标信息进行解密,得到解密结果,并根据解密结果对目标接口进行识别。
根据本发明实施例的第五方面,提供了一种应用程序接口识别系统,该系统包括:代理服务器;该代理服务器用于执行如第一方面的应用程序接口识别方法;浏览器;该浏览器用于执行如第二方面的应用程序接口识别方法。
根据本发明实施例的第六方面,提供了一种计算机可读存储介质,计算机可读存储介质上存储有指令,当计算机可读存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行如第一方面或第二方面的应用程序接口识别方法。
本发明的实施例提供的技术方案至少带来以下有益效果:代理服务器在检测到浏览器启动时,将目标程序代码插入至该浏览器网页的网页信息中,以使浏览器基于目标程序代码,对调用接口的请求方式进行修改,从而使得浏览器能根据修改后的请求方式,对启动浏览器的用户的目标信息进行加密。如此,浏览器生成的调用请求包括了加密后的目标信息,以使得代理服务器需要对调用请求中加密后的目标信息进行解密,从而使得代理服务器能根据解密结果,对用户待调用的目标接口进行识别,从而实现了按照用户的目标信息对目标接口进行识别,保证代理服务器调用的目标接口与用户的目标信息相匹配度,从而保证对接口调用的精准性。并且,因上述技术方案中,是基于用户的目标信息对目标接口进行的识别,能实时根据用户的目标信息精准识别,识别范围不受限制,避免了相关技术中识别范围受API特征库中API特征种类限制的局限性。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理,并不构成对本公开的不当限定。
图1是根据一示例性实施例示出的一种应用程序接口识别系统的示意图;
图2是根据一示例性实施例示出的一种应用程序接口识别方法的流程图一;
图3是根据一示例性实施例示出的一种应用程序接口识别方法的流程图二;
图4是根据一示例性实施例示出的一种应用程序接口识别方法的流程图三;
图5是根据一示例性实施例示出的一种应用程序接口识别装置的框图一;
图6是根据一示例性实施例示出的一种应用程序接口识别装置的框图二;
图7是根据一示例性实施例示出的一种电子设备的示意图。
具体实施方式
为了使本领域普通人员更好地理解本公开的技术方案,下面将结合附图,对本公开实施例中的技术方案进行清楚、完整地描述。
需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
在对本申请实施例提供的应用程序接口识别方法进行详细介绍之前,先对本申请实施例涉及的应用场景和实施环境进行简单介绍。
首先,对本申请涉及的应用场景进行简单介绍。
随着互联网技术的不断发展,网络数据流量中存在着大量的应用程序编程接口(Application Programming Interface,API)。并且,调用的API是否准确,是影响网络的有效管理和网络的安全的关键。基于此,如何从有效地识别网络流量数据中的API是当前亟待解决的技术问题。
相关技术中,通过将调用请求中包括的待调用API的特征信息,与预设API特征库中多个API的特征进行匹配,以从多个API中识别出待调用API,以对识别出的API进行调用。然而,该识别方式的识别能力受预设API特征库中存储的API特征种类的限制,对于预设API特征库以外的API(如,新增在网络流量数据中的API)无法进行有效的识别,从而降低了对API识别的准确度。
针对上述问题,本申请提供了一种应用程序接口识别方法,代理服务器在检测到浏览器启动时,将目标程序代码插入至该浏览器网页的网页信息中,以使浏览器基于目标程序代码,对调用接口的请求方式进行修改,从而使得浏览器能根据修改后的请求方式,对启动浏览器的用户的目标信息进行加密。
如此,浏览器生成的调用请求包括了加密后的目标信息,以使得代理服务器需要对调用请求中加密后的目标信息进行解密,从而使得代理服务器能根据解密结果,对用户待调用的目标接口进行识别,从而实现了按照用户的目标信息对目标接口进行识别,保证代理服务器调用的目标接口与用户的目标信息相匹配度,从而保证对接口调用的精准性。
并且,因上述技术方案中,是基于用户的目标信息对目标接口进行的识别,能实时根据用户的目标信息精准识别,识别范围不受限制,避免了相关技术中识别范围受API特征库中API特征种类限制的局限性。
其次,下面对本申请涉及的实施架构进行简单介绍。
图1是本公开提供的一种应用程序接口识别系统10的示意图。如图1所示,该应用程序接口识别系统包括代理服务器101、业务服务器102和终端设备103,代理服务器101、业务服务器102和终端设备103之间可以通过有线网络或无线网络建立连接。终端设备103包括浏览器。代理服务器101与至少一个业务服务器102关联,代理服务器101用于代理业务服务器102能执行的业务。
终端设备103上浏览器响应于用户对浏览器的启动操作,浏览器向代理服务器101发送对浏览器页面进行访问的访问请求,代理服务器101将该访问请求转发至业务服务器102。业务服务器102将浏览器页面的页面信息发送至代理服务器101。代理服务器101将接收到的浏览器网页的页面信息返回至浏览器,以使浏览器为用户展示包括页面信息的浏览器网页。同时,代理服务器101将目标代码插入至浏览器网页中。用户在该浏览器页面执行对应的目标操作,以请求获取对应的目标接口。浏览器响应于用户执行的该目标操作,根据目标代码,将用户的目标信息加密至调用请求中,并向代理服务器101发送该调用请求。代理服务器101接收该调用请求后,对调用请求中加密的目标信息进行解密,从而基于解密结果对目标接口进行识别。
示例性的,该目标接口可以为网络应用程序编程接口(Web ApplicationProgramming Interface,WebAPI)。
一些实施例中,代理服务器101包含有数据库或与数据库连接,程序应用接口与网页信息的信息标识的对应关心可以存储于数据库中。终端设备103上的浏览器可以通过代理服务器101实现对数据库中程序应用接口的访问操作。
另一些实施例中,代理服务器101可以是单独的一个服务器,或者,也可以是由多个服务器构成的服务器集群。部分实施方式中,服务器集群还可以是分布式集群。本申请对代理服务器101的具体实现方式也不作限制。
终端设备103可以是手机、平板电脑、桌面型、膝上型、手持计算机、笔记本电脑、超级移动个人计算机(ultra-mobile personal computer,UMPC)、上网本,以及蜂窝电话、个人数字助理(personal digital assistant,PDA)、增强现实(augmented reality,AR)\虚拟现实(virtual reality,VR)设备等可以安装并使用内容社区应用(如快手)的设备,本公开对该终端的具体形态不作特殊限制。其可以与用户通过键盘、触摸板、触摸屏、遥控器、语音交互或手写设备等一种或多种方式进行人机交互。
可选地,上述图1所示的应用程序接口识别系统中,代理服务器101可以与至少一个终端设备103连接。本申请对终端设备103的数量及类型均不作限制。
本申请实施例提供的应用程序接口识别方法可以应用于前述图1所示的实施架构中的终端设备的浏览器和代理服务器。为了便于理解,以下结合附图对本申请提供的应用程序接口识别方法进行具体介绍。
图2是根据一示例性实施例示出的一种应用程序接口识别方法的流程图,如图2所示,该应用程序接口识别方法包括以下步骤。为了便于表述,将“应用程序接口”表述为“接口”。
S21,代理服务器检测到浏览器的启动操作,将目标程序代码插入至浏览器网页的网页信息中。
其中,目标程序代码用于对浏览器关联的接口的调用过程中的请求方式进行修改,以在产生调用请求的过程中,浏览器执行对用户的目标信息进行加密的操作。
在一些实施方式中,用户通过终端设备发起对浏览器的访问操作,浏览器响应于该访问操作,为用户显示对应的浏览器网页时,说明该浏览器在执行启动操作,即,向用户显示浏览器网页的操作。
S22,浏览器在浏览器网页的网页信息存在目标程序代码的情况下,响应于用户在浏览器网页上的目标操作,根据目标程序代码、目标接口对应的目标请求方式以及用户的目标信息,生成调用请求。
其中,生成的调用请求包括加密的目标信息。通常,目标信息是通过预设加密规则进行加密的。
在一些实施方式中,上述目标信息可以为以下任意一种或两种:用户在浏览器网页上输入的用户认证信息和浏览器对应的终端设备上存储的用户信息。示例性的,用户输入的用户认证信息可以为用户账户名和密码。终端设备上存储的用户信息可以理解为是储存在用户本地终端设备上的用于辨别用户身份的数据信息(通常是经过加密的),该数据信息可以是暂时或永久保存的信息。
上述目标请求方式可以理解为对目标接口执行调用请求过程中,产生调用请求的方式。示例性的,调用请求可以为XHR请求、request请求或fetch请求等。若调用请求为XHR请求,则产生的该XHR请求的请求方式称为XHR方法。若调用请求为request请求,则产生的该request请求的请求方式称为request方法。若调用请求为fetch请求,则产生的该fetch请求的请求方式称为fetch请求。
在一些实施方式中,目标操作可以为用户对浏览器页面上的目标页面信息执行的单击、双击等到点击触发操作。其中,目标页面信息为用户从页面信息中确定出的与接口关联的信息。目标页面信息关联的接口为目标接口。
可理解的是,浏览器启动后,为用户展示浏览器页面。用户对浏览器页面上的目标页面信息执行目标操作,以请求获取目标接口。浏览器响应于该目标操作,浏览器调用插入在网页信息中的目标程序代码,以及目标接口对应的目标请求方式和用户的目标信息,生成调用请求,以将加密的目标信息包含至调用请求,从而实现了基于用户的目标信息对调用请求的加密。如此,相比于相关技术中采用明文的调用请求,本申请的技术方案中是生成的调用请求是暗文的,具有更高的安全性。并且,是针对用户的目标信息,
S23,浏览器向代理服务器发送调用请求。
浏览器将产生的调用请求,发送至代理服务器,请求代理服务器调用目标接口。
S24,代理服务器接收浏览器返回的对目标接口的调用请求,并对调用请求中加密的目标信息进行解密,得到解密结果。
代理服务器接收浏览器发送的调用请求。同时,代理服务器基于预设解密规则,对目标信息进行解密。其中,预设解密规则与预设加密规则相对应。
S25,代理服务器根据解密结果,对目标接口进行识别。
上述解密结果分为两种情况,第一种解密成功的情况和第二种解密失败的情况。
具体地,在代理服务器解密失败时,产生的解密结果是指示解密失败,即,确定待调用的目标接口为异常接口,则代理服务器拒绝该调用请求,不调用目标接口,以使浏览器网页上不显示目标接口对应的页面信息。
通常,解密结果为0时,表征解密失败;解密结果为1时,表征解密成功。
在代理服务器解密成功时,产生的解密结果指示解密成功,即,确定待调用的目标接口是与该用户的目标信息匹配的接口,则代理服务器接受调用请求,即,代理服务器调用目标接口,并将该目标接口发送至浏览器,以使浏览器网页上显示目标接口对应的页面信息。
通过上述实施例,基于目标程序代码,将加密的目标信息增加至调用请求中,使得代理服务器能根据解密结果,对用户待调用的目标接口进行识别,从而实现了按照用户的目标信息对目标接口进行识别,保证代理服务器调用的目标接口与用户的目标信息相匹配度,从而保证对接口调用的精准性。并且,因上述实施例中,是基于用户的目标信息对目标接口进行的识别,能实时根据用户的目标信息精准识别,识别范围不受限制,避免了相关技术中识别范围受API特征库中API特征种类限制的局限性。
在一些实施方式中,基于以下场景,步骤S21中代理服务器能检测到浏览器的启动操作。用户在用户的终端设备上显示的浏览器标识执行触发操作时,浏览器响应于该用户执行的该触发操作,向代理服务器发送浏览器启动请求。代理服务器接收到浏览器发送的浏览器启动请求,代理服务器将浏览器启动请求转发至业务服务器。业务服务器接受该浏览器启动请求,并将浏览器网页的页面显示信息发送至代理服务器。代理服务器接收到业务服务器返回的浏览器网页的页面显示信息,并将接收到的页面显示信息发送至浏览器,以使浏览器为用户显示浏览器网页,从而说明存在浏览器的启动操作。
作为上述实施例具体实施方式的细化和扩展,为了完整说明本实施例的具体施过程,本申请实施例提供了另一种应用程序接口识别方法,结合图2,如图3所示,上述步骤S21中将目标程序代码插入至浏览器网页的网页信息的过程具体包括:
S211,代理服务器检测到浏览器的启动操作,将目标程序代码与引擎标识关联。
上述引擎标识用于指示存在目标程序代码。
代理服务器将引擎标识插入至浏览器网页的网页信息中,以便于对目标程序代码的识别。
S212,代理服务器将引擎标识插入至浏览器网页的网页信息中。
基于引擎标识与目标程序代码的关联关系,实现基于引擎标识对目标程序代码的调用。
进一步地,作为一种具体实施方式,上述步骤S22中生成调用请求的方式具体包括:浏览器响应于用户在浏览器网页上的目标操作,采用目标程序代码对目标接口对应的目标请求方式进行修改,以使修改后的目标请求方式,能执行对目标信息的加密操作。浏览器按照修改后的目标请求方式,对用户的目标信息进行加密,以及根据加密的目标信息生成调用请求。
示例性的,将原有产生XHR请求的请求方式进行修改,根据修改后的请求方式,在产生XHR请求的同时,也将加密后的目标信息添加至待产生的XHR请求中,以使产生的XHR请求中包括加密后的目标信息。
作为另一种具体实施方式,上述步骤S22中通过以下方式,确定浏览器网页中是否存在目标程序代码:浏览器可以通常查询浏览器网页中是否存在目标程序代码的标识,确定是否存在目标程序代码。具体地,浏览器确定浏览器网页中存在目标程序代码的标识,则确定存在目标程序代码;浏览器确定浏览器网页中不存在目标程序代码的标识,则确定不存在目标程序代码,说明代理服务器未将目标程序代码插入至浏览器网页中或未成功地将目标程序代码插入至浏览器网页中。
示例性的,目标程序代码的标识可以为引擎标识。
进一步地,本申请实施例提供了又一种应用程序接口识别方法,结合图2,如图4所示,在执行完上述步骤S25之后,还可以通过执行以下步骤,以确定出该目标接口的服务类型。
S41,代理服务器获取目标接口的接口信息。
其中,接口信息至少包括以下一种或多种:请求信息、操作信息和上下文信息。
具体地,请求信息可以是目标接口关联的请求包括的请求内容、生成该请求的请求方式、该请求的请求类型和以及该请求关联的响应信息。操作信息可以是用户在终端设备上显得目标接口的页面信息上执行的相关操作的信息,如,点击次数,点击时长等。上下文信息可以包括目标接口的描述信息。
S42,代理服务器根据目标接口对应的多个解密结果和接口信息,确定目标接口的服务类型。
可以理解的是,代理服务器根据目标接口对应的多个解密结果中解密成功和解密失败的次数,以及目标接口信息,确定出目标接口的服务类型。
在一些实施方式中,对目标接口成功调用的次数大于预设阈值,以及,每个用户对应的点击次数大于预设次数,则确定该目标接口的服务类型为对页面信息进行轮刷(即,反复更新页面)服务。
以目标接口对应抢票类型为例,对服务类型为做进一步解释。在检测到用户在目标接口的抢票页面上多次反复执行抢票操作后,才能通过浏览器页面为用户展示目标页面,以是用户在目标页面上操作,来完成购票。
通过上述实施例,在对目标接口进行精准识别的基础上,又对目标接口的接口信息和对应的多个解密结果进行分析,以确定出目标接口的服务类型,以便于识别接口能提供的服务。
为了实现上述功能,应用程序接口识别装置包含了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本文中所公开的实施例描述的各示例的算法步骤,本申请能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
本公开实施例还提供一种如图5所示的应用程序接口识别装置,应用于代理服务器,代理服务器具有反向代理的功能。该应用程序接口识别装置包括:检测单元511、接收单元512和识别单元513。
检测单元511,被配置为检测到浏览器的启动操作,将目标程序代码插入至浏览器网页的网页信息中;目标程序代码用于对浏览器关联的接口的调用过程中的请求方式进行修改。
接收单元512,被配置为接收浏览器返回的对目标接口的调用请求,并对调用请求中加密的目标信息进行解密,得到解密结果;调用请求为浏览器发送的,且是浏览器响应于用户在浏览器网页上的目标操作,根据目标程序代码、目标接口对应的目标请求方式以及用户的目标信息生成的。
识别单元513,被配置为根据解密结果对目标接口进行识别。
在一种可能的实施方式,该识别单元513被具体配置为:在解密结果指示解密失败时,确定目标接口为异常接口,以及拒绝调用请求;在解密结果指示解密成功时,接受调用请求,以将目标接口调用至浏览器。
另一种可能的实施方式中,该接收单元512被具体配置为:浏览器响应于用户在浏览器网页上的目标操作,采用目标程序代码对目标接口对应的目标请求方式进行修改;目标操作用于请求调用目标接口;浏览器按照修改后的目标请求方式,对用户的目标信息进行加密,以及根据加密的目标信息生成调用请求。
另一种可能的实施方式中,该检测单元511被具体配置为:检测到浏览器的启动操作后,将目标程序代码与引擎标识关联;引擎标识指示存在目标程序代码;将引擎标识插入至浏览器网页的网页信息中。
另一种可能的实施方式中,该识别单元513还被具体配置为:获取目标接口的接口信息,接口信息至少包括请求信息、操作信息和上下文信息;根据目标接口对应的多个解密结果和接口信息,确定目标接口的服务类型。
另一种可能的实施方式中,该装置还被配置为:接收到浏览器发送的浏览器启动请求,代理服务器将浏览器启动请求转发至业务服务器;浏览器启动请求为用户在用户的终端设备上显示的浏览器标识执行触发操作时,浏览器发送的;接收到业务服务器返回的浏览器网页的页面显示信息;将接收到的页面显示信息发送至浏览器,以使浏览器为用户显示浏览器网页。
本公开实施例还提供一种如图6所示的应用程序接口识别装置,应用于浏览器,该装置包括:生成单元611和发送单元612。
生成单元611,被配置为在浏览器网页的网页信息存在目标程序代码的情况下,响应于用户在浏览器网页上的目标操作,根据目标程序代码、目标接口对应的目标请求方式以及用户的目标信息,生成调用请求,调用请求包括加密的目标信息。
发送单元612,被配置为向代理服务器发送调用请求,以使代理服务器对调用请求中目标信息进行解密,得到解密结果,并根据解密结果对目标接口进行识别。
在一种可能的实施方式中,该生成单元611,被具体配置为响应于用户在所述浏览器网页上的目标操作,采用所述目标程序代码对目标接口对应的目标请求方式进行修改;所述目标操作用于请求调用目标接口;浏览器按照修改后的目标请求方式,对用户的目标信息进行加密,以及根据加密的目标信息生成调用请求。
在一种可能的实施方式中,该装置被具体配置为确定所述浏览器网页的网页信息中存在引擎标识,以确定出所述浏览器网页的网页信息中的所述目标程序代码;所述引擎标识指示存在所述目标程序代码,所述引擎标识与所述目标程序代码关联。
关于上述实施例中的装置,其中各个单元模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
图7是本申请提供的一种电子设备的示意图。如图7,该电子设备50可以包括至少一个处理器501以及用于存储处理器可执行指令的存储器503。其中,处理器501被配置为执行存储器503中的指令,以实现以下实施例中的应用程序接口识别方法。
另外,电子设备50还可以包括通信总线502、至少一个通信接口504、输入设备506和输出设备505。
处理器501可以是一个处理器(central processing units,CPU),微处理单元,ASIC,或一个或多个用于控制本申请方案程序执行的集成电路。
通信总线502可包括一通路,在上述组件之间传送信息。
通信接口504,使用任何收发器一类的装置,用于与其他设备或通信网络通信,如以太网,无线接入网(radio access network,RAN),无线局域网(wireless local areanetworks,WLAN)等。
输入设备506用于接收输入信号和输出设备505用于输出信号。
存储器503可以是只读存储器(read-only memory,ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,RAM)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(electricallyerasable programmable read-only memory,EEPROM)、只读光盘(compact disc read-only memory,CD-ROM)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器可以是独立存在,通过总线与处理单元相连接。存储器也可以和处理单元集成在一起。
其中,存储器503用于存储执行本申请方案的指令,并由处理器501来控制执行。处理器501用于执行存储器503中存储的指令,从而实现本申请方法中的功能。
在具体实现中,作为一种实施例,处理器501可以包括一个或多个CPU,例如图7中的CPU0和CPU1。
在具体实现中,作为一种实施例,电子设备50可以包括多个处理器,例如图7中的处理器501和处理器507。这些处理器中的每一个可以是一个单核(single-CPU)处理器,也可以是一个多核(multi-CPU)处理器。这里的处理器可以指一个或多个设备、电路、和/或用于处理数据(例如计算机程序指令)的处理核。
该电子设备如图7所示包括:处理器501和用于存储处理器501可执行指令的存储器503;其中,处理器501被配置为执行可执行指令,以实现如上述任一种可能的实施方式的应用程序接口识别方法。且能达到相同的技术效果,为避免重复,这里不再赘述。
本申请实施例还提供一种计算机可读存储介质,当计算机可读存储介质中的指令由应用程序接口识别装置或电子设备的处理器执行时,使得应用程序接口识别装置或电子设备能够执行如上述任一种可能的实施方式的应用程序接口识别方法。且能达到相同的技术效果,为避免重复,这里不再赘述。
本申请实施例还提供一种计算机程序产品,包括计算机程序或指令,计算机程序或指令被处理器执行如上述任一种可能的实施方式的应用程序接口识别方法。且能达到相同的技术效果,为避免重复,这里不再赘述。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由下面的权利要求指出。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求来限制。
Claims (10)
1.一种应用程序接口识别方法,其特征在于,应用于代理服务器,所述代理服务器具有反向代理的功能,所述方法包括:
检测到浏览器的启动操作,将目标程序代码插入至浏览器网页的网页信息中;所述目标程序代码用于对浏览器关联的接口的调用过程中的请求方式进行修改;
接收所述浏览器返回的对目标接口的调用请求,并对所述调用请求中加密的目标信息进行解密,得到解密结果;所述调用请求为所述浏览器发送的,且是所述浏览器响应于用户在所述浏览器网页上的目标操作,根据所述目标程序代码、所述目标接口对应的目标请求方式以及用户的所述目标信息生成的;
根据所述解密结果,对所述目标接口进行识别。
2.根据权利要求1所述的方法,其特征在于,所述根据解密结果确定所述目标接口是否异常,包括:
在所述解密结果指示解密失败时,确定所述目标接口为异常接口,以及拒绝所述调用请求;
在所述解密结果指示解密成功时,接受所述调用请求,以将所述目标接口调用至所述浏览器。
3.根据权利要求1所述的方法,其特征在于,所述浏览器响应于用户在所述浏览器网页上的目标操作,根据所述目标程序代码、目标接口对应的目标请求方式以及用户的所述目标信息生成的,具体包括:浏览器响应于用户在所述浏览器网页上的目标操作,采用所述目标程序代码对目标接口对应的目标请求方式进行修改;所述目标操作用于请求调用所述目标接口;浏览器按照修改后的目标请求方式,对用户的所述目标信息进行加密,以及根据加密的目标信息生成调用请求。
4.根据权利要求1所述的方法,其特征在于,所述检测到浏览器的启动操作,将目标程序代码插入至浏览器网页的网页信息中,包括:
检测到所述浏览器的启动操作后,将所述目标程序代码与引擎标识关联;所述引擎标识指示存在所述目标程序代码;
将所述引擎标识插入至所述浏览器网页的网页信息中。
5.根据权利要求1至4中任一项所述的方法,其特征在于,所述方法还包括:
获取所述目标接口的接口信息,所述接口信息至少包括以下一种或多种:请求信息、操作信息和上下文信息;
根据所述目标接口对应的多个解密结果和所述接口信息,确定所述目标接口的服务类型。
6.一种应用程序接口识别方法,其特征在于,应用于浏览器,所述方法包括:
在浏览器网页的网页信息存在目标程序代码的情况下,响应于用户在浏览器网页上的目标操作,根据所述目标程序代码、目标接口对应的目标请求方式以及用户的目标信息,生成调用请求,所述调用请求包括加密的目标信息;
向代理服务器发送所述调用请求,以使代理服务器对调用请求中目标信息进行解密,得到解密结果,并根据所述解密结果对所述目标接口进行识别。
7.一种应用程序接口识别装置,其特征在于,应用于代理服务器,所述代理服务器具有反向代理的功能,所述装置包括:
检测单元,被配置为检测到浏览器的启动操作,将目标程序代码插入至浏览器网页的网页信息中;所述目标程序代码用于对浏览器关联的接口的调用过程中的请求方式进行修改;
接收单元,被配置为接收所述浏览器返回的对目标接口的调用请求,并对所述调用请求中加密的目标信息进行解密,得到解密结果;所述调用请求为所述浏览器发送的,且是所述浏览器响应于用户在所述浏览器网页上的目标操作,根据所述目标程序代码、所述目标接口对应的目标请求方式以及用户的目标信息生成的;
识别单元,被配置为根据所述解密结果对所述目标接口进行识别。
8.一种应用程序接口识别装置,其特征在于,应用于浏览器,所述装置包括:
生成单元,被配置为在浏览器网页的网页信息存在目标程序代码的情况下,响应于用户在浏览器网页上的目标操作,根据所述目标程序代码、目标接口对应的目标请求方式以及用户的目标信息,生成调用请求,所述调用请求包括加密的目标信息;
发送单元,被配置为向代理服务器发送所述调用请求,以使代理服务器对调用请求中目标信息进行解密,得到解密结果,并根据所述解密结果对所述目标接口进行识别。
9.一种应用程序接口识别系统,其特征在于,所述系统包括:
代理服务器;所述代理服务器用于执行如权利要求1-5中任一项所述的应用程序接口识别方法;
浏览器;所述浏览器用于执行如权利要求6所述的应用程序接口识别方法。
10.一种计算机可读存储介质,所述计算机可读存储介质上存储有指令,其特征在于,当所述计算机可读存储介质中的指令由电子设备的处理器执行时,使得所述电子设备能够执行如权利要求1-5中任一项或权利要求6所述的应用程序接口识别方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310580150.3A CN116560876A (zh) | 2023-05-22 | 2023-05-22 | 应用程序接口识别方法、装置、系统及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310580150.3A CN116560876A (zh) | 2023-05-22 | 2023-05-22 | 应用程序接口识别方法、装置、系统及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116560876A true CN116560876A (zh) | 2023-08-08 |
Family
ID=87491359
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310580150.3A Pending CN116560876A (zh) | 2023-05-22 | 2023-05-22 | 应用程序接口识别方法、装置、系统及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116560876A (zh) |
-
2023
- 2023-05-22 CN CN202310580150.3A patent/CN116560876A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11520912B2 (en) | Methods, media, apparatuses and computing devices of user data authorization based on blockchain | |
US8484480B2 (en) | Transmitting information using virtual input layout | |
US10270758B2 (en) | Login method, server, and login system | |
CN110515678B (zh) | 一种信息处理方法、设备和计算机存储介质 | |
US10733594B1 (en) | Data security measures for mobile devices | |
CN110851800B (zh) | 代码保护方法、装置、系统及可读存储介质 | |
CN112367164B (zh) | 业务请求处理方法、装置、计算机设备和存储介质 | |
CN104901951A (zh) | 一种Web应用中基于移动终端的密码数据处理与交互方法 | |
CN113489706B (zh) | 一种数据处理方法、装置、系统、设备及存储介质 | |
CN114584378B (zh) | 数据处理方法、装置、电子设备和介质 | |
CN114448722B (zh) | 跨浏览器登录方法、装置、计算机设备和存储介质 | |
CN114095165B (zh) | 密钥更新方法、服务端设备、客户端设备及存储介质 | |
CN116560876A (zh) | 应用程序接口识别方法、装置、系统及存储介质 | |
CN112583602B (zh) | 信息码数据传输方法、装置、系统、计算机设备和介质 | |
CN110457959B (zh) | 一种基于Trust应用的信息传输方法及装置 | |
CN114978934A (zh) | 信息脱敏方法和装置、电子设备及计算机可读存储介质 | |
JP2019133347A (ja) | 認証システムおよび認証方法 | |
CN109462604B (zh) | 一种数据传输方法、装置、设备及存储介质 | |
CN113254108A (zh) | 基于小程序的门店操作方法及装置、电子设备、存储介质 | |
CN104915607A (zh) | 一种基于移动终端的密码数据处理和交换方法 | |
US10963559B1 (en) | Smart property archive for safeguarding software configuration | |
CN113783835B (zh) | 一种口令分享方法、装置、设备及存储介质 | |
CN114095254B (zh) | 报文加密方法、服务端设备、客户端设备及存储介质 | |
CN115567302B (zh) | Ssh数据传输装置、方法、设备及存储介质 | |
CN117278323B (zh) | 第三方信息的获取方法、电子设备及可读存储介质 |
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 |