CN107423037A - 应用程序接口定位方法及设备 - Google Patents
应用程序接口定位方法及设备 Download PDFInfo
- Publication number
- CN107423037A CN107423037A CN201710138847.XA CN201710138847A CN107423037A CN 107423037 A CN107423037 A CN 107423037A CN 201710138847 A CN201710138847 A CN 201710138847A CN 107423037 A CN107423037 A CN 107423037A
- Authority
- CN
- China
- Prior art keywords
- interface
- regular expression
- product
- target
- canonical
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
- G06F8/42—Syntactic analysis
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本申请的目的是提供一种应用程序接口定位方法及设备,用以解决现有技术无法适用于数据量较大的复杂业务场景的问题。具体地,根据预先定义的应用程序接口的相关动态参数构建正则表达式,并建立正则表达式与应用程序接口的定位信息之间的映射关系,使得通过正则表达式可以确定对应的定位信息,在接收到接口调用请求时,采用正则匹配的方式替代通过映射对象进行查找,由于正则匹配的方式不会在数据量线性增长时出现性能瓶颈,并且正则表达式的形式更加丰富,支持更加复杂的模糊匹配,因此能够满足大数据量大的复杂业务场景。
Description
技术领域
本申请涉及计算机领域,尤其涉及一种应用程序接口定位方法及设备。
背景技术
随着计算机技术的发展,越来越多的用于客户端和服务器之间交互的软件采用了Restful风格,所述Restful风格是指软件的设计符合REST(Representational StateTransfer,表述性状态传递)构架。
在Restful风格的软件中,客户端在向服务器端发送请求时,不会直接在请求中明确给出需要调用的应用程序接口(API),而是需要由服务器根据请求中的相关请求参数定位到指定的应用程序接口,某些请求参数会包含动态部分(例如动态域名、动态路径等),使得不同的参数可以定位到同一应用程序接口。
现有技术中会将预先定义的动态参数的动态部分采用通配符(*)进行模糊化的处理,之后以键值的形式保存至映射对象(MAP)中,使得模糊化的动态参数与应用程序接口之间建立映射。在获取到客户端的请求时,会根据请求中的具体请求参数在映射对象中进行查找,由此定位应用程序接口。但是,当数据线性增长时,此种定位的方式会有性能瓶颈,当数据量较大时,定位性能会显著降低,并且动态部分进行模糊化的方式比较单一,无法进行复杂的匹配。因此,现有技术中的方案无法适用于数据量较大的复杂业务场景。
申请内容
本申请的一个目的是提供一种应用程序接口定位方法及设备,用以解决现有技术无法适用于数据量较大的复杂业务场景的问题。
为实现上述目的,本申请提供了一种应用程序接口定位方法,该方法包括:
获取基于应用程序接口的动态参数生成的正则表达式,以及所述正则表达式与对应应用程序接口的定位信息之间的映射;
在获取到接口调用请求时,将所述接口调用请求的请求参数与正则表达式进行正则匹配,获取与所述请求参数匹配的目标正则表达式,并根据正则表达式与定位信息之间的映射,确定所述目标正则表达式所对应的目标定位信息;
根据所述目标定位信息确定所述接口调用请求所调用的应用程序接口。
基于本申请的另一方面,还提供了一种应用程序接口定位设备,该设备包括:
正则构建装置,用于获取基于应用程序接口的动态参数生成的正则表达式,以及所述正则表达式与对应应用程序接口的定位信息之间的映射;
正则匹配装置,用于在获取到接口调用请求时,将所述接口调用请求的请求参数与正则表达式进行正则匹配,获取与所述请求参数匹配的目标正则表达式,并根据正则表达式与定位信息之间的映射,确定所述目标正则表达式所对应的目标定位信息;
定位装置,用于根据所述目标定位信息确定所述接口调用请求所调用的应用程序接口。
本申请还提供了一种应用程序接口定位设备,该设备包括:
处理器;
以及被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器:获取基于应用程序接口的动态参数生成的正则表达式,以及所述正则表达式与对应应用程序接口的定位信息之间的映射;在获取到接口调用请求时,将所述接口调用请求的请求参数与正则表达式进行正则匹配,获取与所述请求参数匹配的目标正则表达式,并根据正则表达式与定位信息之间的映射,确定所述目标正则表达式所对应的目标定位信息;根据所述目标定位信息确定所述接口调用请求所调用的应用程序接口。
与现有技术相比,本申请的技术方案根据预先定义的应用程序接口的相关动态参数构建正则表达式,并建立正则表达式与应用程序接口的定位信息之间的映射关系,使得通过正则表达式可以确定对应的定位信息,在接收到接口调用请求时,采用正则匹配的方式替代通过映射对象进行查找,由于正则匹配的方式不会在数据量线性增长时出现性能瓶颈,并且正则表达式的形式更加丰富,支持更加复杂的模糊匹配,因此能够满足大数据量大的复杂业务场景。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:
图1为本申请实施例提供的一种应用程序接口定位方法的流程图;
图2为本申请实施例提供的一种应用程序接口定位设备的结构示意图;
图3为本申请实施例中的方案进行应用程序接口定位时的数据交互示意图;
附图中相同或相似的附图标记代表相同或相似的部件。
具体实施方式
下面结合附图对本申请作进一步详细描述。
在本申请一个典型的配置中,终端、服务网络的设备和可信方均包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括非暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
如图1所示,本申请实施例提供了一种应用程序接口定位方法,该方法包括以下步骤:
步骤S101,获取基于应用程序接口的动态参数生成的正则表达式,以及所述正则表达式与对应应用程序接口的定位信息之间的映射;
步骤S102,在获取到接口调用请求时,将所述接口调用请求的请求参数与正则表达式进行正则匹配,获取与所述请求参数匹配的目标正则表达式,并根据正则表达式与定位信息之间的映射,确定所述目标正则表达式所对应的目标定位信息;
步骤S103,根据所述目标定位信息确定所述接口调用请求所调用的应用程序接口。
该方法根据预先定义的应用程序接口的相关动态参数构建正则表达式,并建立正则表达式与应用程序接口的定位信息之间的映射关系,使得通过正则表达式可以确定对应的定位信息,在接收到接口调用请求时,采用正则匹配的方式替代通过映射对象进行查找,由于正则匹配的方式不会在数据量线性增长时出现性能瓶颈,并且正则表达式的形式更加丰富,支持更加复杂的模糊匹配,因此能够满足大数据量大的复杂业务场景。
在所述步骤S101中,正则表达式以及定位信息与正则表达式的映射关系可以采用以下方式获取:首先由数据库中读取至少一个应用程序接口的动态参数以及定位信息,这些动态参数与定位信息一一对应,其可以通过一项动态参数找到一项定位信息,并由该定位信息确定特定的应用程序接口,然后基于动态参数生成正则表达式,并根据动态参数与定位信息一一对应的关系,建立正则表达式与定位信息之间的映射。此外,也可以由数据库中直接读取正则表达式以及定位信息与正则表达式的映射关系。
在此,所述应用程序接口的定位信息为用于唯一确定特定应用程序接口的信息,在实际应用中,由于不同应用产品之间可能存在同名的应用程序接口,因此本实施例中所述定位信息包括产品名称和接口名称,通过不同的产品名称来区分不同的应用,由此可以准确定位不同应用产品的同名应用程序接口。例如产品名称为Acs,接口名称为PutApi,对于名为Acs应用产品,其所使用的PutApi不同于其它应用产品的PutApi,因此只有通过Acs+PutApi,才可以定位到特定的一个应用程序接口。
所述动态参数包括接口方式属性(ApiHttpMethod)、包含动态部分的接口路径(Api Path)和包含动态部分的产品域名。对于某一特定的应用程序接口,其接口方式属性为特定的属性值,例如PUT、GET、POST等。所述接口路径和产品域名均包含两部分,即动态部分和静态部分,每个调用该应用程序接口的请求参数中均相同的部分即为静态部分,而可能发生变化的部分则为动态部分。例如,前述通过Acs+PutApi定位的应用程序接口为API_01,其接口方式属性为PUT,接口路径为/Api/Ecs/2014-05-26/CreateInstance,产品域名为acs.cn-hangzhou.aliyuncs.com,其中,动态部分为Ecs、2014-05-26、CreateInstance以及cn-hangzhou。
所述接口调用请求为需要调用任意应用程序接口的请求,例如获取指定资源的http(HyperText Transfer Protocol,超文本传输协议)请求。所述接口调用请求中的请求参数包括请求方式属性、请求路径和请求域名分别是指每个接口调用请求中所包含的特定的接口方式属性、接口路径和产品域名。
由此可知,对于调用前述应用程序接口API_01的接口调用请求,其包含的请求参数中的请求路径和请求域名无需与/Api/Ecs/2014-05-26/CreateInstance和acs.cn-hangzhou.aliyuncs.com完全一致,其动态部分只需要符合正则匹配的规则即可,例如请求路径为/Api/Ecs/2014-06-12/CreateInstance,请求域名为acs.cn-beijing.aliyuncs.com,请求方式属性为PUT,同样可以定位到应用程序接口API_01。
基于所述定位信息、动态参数以及请求参数,所述步骤S101具体包括两部分:产品正则的构建以及接口正则的构建。
一、产品正则的构建过程为:获取基于包含动态部分的产品域名生成的产品正则表达式,以及所述产品正则表达式与对应产品名称之间的产品映射。
在实际场景中,若由数据库读取到的信息包括包含动态部分的产品域名和产品名称,则使用匹配字符替代所述产品域名的动态部分,生成产品正则表达式,并与对应的产品名称建立产品映射。仍以前例所示的产品域名acs.cn-hangzhou.aliyuncs.com和产品名称Acs为例,由于其中的动态部分为cn-hangzhou,则使用匹配字符(例如[^\./\?]+?)替代,得到产品正则表达式acs.[^\./\?]+?.aliyuncs.com。所述匹配字符由符合正则表达式语法规则的一个或多个字符构成,用于表示正则表达式中的相应位置可能出现的具体字符内容。由此得到的产品正则表达式能够匹配符合该规则的任意字符串,例如acs.cn-shanghai.aliyuncs.com、acs.beijing.aliyuncs.com等。对于所述产品正则表达式acs.[^\./\?]+?.aliyuncs.com,将其与对应的产品名称Acs建立产品映射。对于多组产品域名和产品名称,可以根据上述方式一一处理,例如其它应用程序接口的产品正则表达式为account.[^\./\?].aliyuncs.com、vod.[^\./\?].aliyuncs.com等。
对于建立产品映射的方式,本申请实施例中通过构建正则字符串的方式实现。具体地,在生成产品正则表达式的同时,根据对应的产品名称生成通用唯一识别码(UUID),将该通用唯一识别码作为分组名称,并与对应的产品正则表达式组成正则字符串。例如对于产品名称Acs,生成的唯一通用识别码为F8B5752B-2C6B-452F-92A1-096F50ECAB22,将其与产品正则表达式共同组成正则字符串,由此建立两者产品正则表达式与产品名称之间的映射。在本实施例中,正则字符串可以采用如下的形式:“(?<”+分组名称+“>”+正则表达式+“)”,其中分组名称即为所述通用唯一识别码,由此可知,产品的正则字符串为:(?<F8B5752B-2C6B-452F-92A1-096F50ECAB22>acs.[^\./\?]+?.aliyuncs.com)。
进一步地,由于通用唯一识别码由产品名称唯一确定,因此在获取基于包含动态部分的产品域名生成的产品正则表达式,并根据对应的产品名称生成通用唯一识别码之后,将所述通用唯一识别码和对应的产品名称以键值的形式保存至映射对象(MAP)中,在需要使用时在映射对象中查找即可取出。
二、接口正则的构建过程为:获取基于接口方式属性和包含动态部分的接口路径生成的接口正则表达式,以及所述接口正则表达式与对应接口名称之间的接口映射。
在实际场景中,若由数据库读取到的信息包括接口方式属性、包含动态部分的接口路径和接口名称,则使用匹配字符替代所述接口路径的动态部分,并结合所述接口方式属性生成接口正则表达式,并与对应的接口名称建立接口映射。仍以前例所示的接口路径/Api/Ecs/2014-05-26/CreateInstance、接口方式属性PUT和接口名称PutApi为例,由于其中的动态部分为Ecs、2014-05-26和CreateInstance,则使用匹配字符(例如[^\./\?]+?)替代,得到接口品正则表达式PUT_/Api/[^\./\?]+?/[^\./\?]+?/[^\./\?]+?。由此得到的接口正则表达式能够匹配符合该规则的任意字符串,例如PUT_/Api/Ecs/2014-06-12/CreateInstance、PUT_/Api/Ecs_1/2014-06-12/CreateInstance等。对于所述接口正则表达式PUT_/Api/Ecs/2014-06-12/CreateInstance,将其与对应的接口名称PutApi建立接口映射。对于多组接口路径、接口调用方式和接口名称,可以根据上述方式一一处理,例如根据上述方法得到其它的接口正则表达式GET_/Api/[^\./\?]+?/[^\./\?]+?,PUT_/v2/[^\./\?]+?/[^\./\?]+?等。
对于建立接口映射的方式,同样可以通过构建正则字符串的方式实现。具体地,在生成接口正则表达式的同时,根据对应的接口名称生成通用唯一识别码(UUID),将该通用唯一识别码作为分组名称,并与对应的接口正则表达式组成正则字符串。例如对于接口名称PutApi,生成的唯一通用识别码为F8B5752B-2C6B-452F-92A1-096F50ECAE1A,将其与接口正则表达式共同组成正则字符串,由此建立两者接口正则表达式与接口名称之间的映射。在本实施例中,可以采用与产品部分类似的正则字符串形式,由此,生成的接口的正则字符串为(?<F8B5752B-2C6B-452F-92A1-096F50ECAE1A>PUT_/Api/[^\./\?]+?/[^\./\?]+?/[^\./\?]+?)。
进一步地,对于通用唯一识别码与接口名称之间的对应关系,同样可以采用以下方式保存,即获取基于接口方式属性和包含动态部分的接口路径生成的接口正则表达式,并根据对应的接口名称生成通用唯一识别码之后,将所述通用唯一识别码和对应的接口名称以键值的形式保存至映射对象中,在需要使用时在映射对象中查找即可取出。
所述步骤S101中生成的正则表达式作为后续处理的匹配样本,用来与请求中的相关请求参数进行正则匹配。对于步骤S102所述的正则匹配的过程,包括两个部分:产品正则匹配和接口正则匹配。所述产品正则匹配的过程为:将请求域名与产品正则表达式进行正则匹配,获取与所述请求域名匹配的目标产品正则表达式,并根据所述产品映射确定所述目标产品正则表达式对应的目标产品名称。相应地,所述将请求方式属性及请求路径与接口正则表达式进行正则匹配,获取与所述请求方式属性及请求路径匹配的目标接口正则表达式,并根据所述接口映射确定所述目标接口正则表达式对应的目标接口名称。
仍以前述场景为例,若收到的接口调用请求中所述请求域名为acs.cn-shanghai.aliyuncs.com,请求方式属性为PUT,请求路径为/Api/Ecs/2014-06-12/CreateInstance,则将所述请求域名与产品正则表达式进行正则匹配,将请求方式属性及请求路径与接口正则表达式进行正则匹配。
将请求域名与所有的产品正则表达式进行匹配,可以确定与该请求域名匹配的目标产品正则表达式为acs.[^\./\?]+?.aliyuncs.com,由于该目标产品正则表达式所属的正则字符串为(?<F8B5752B-2C6B-452F-92A1-096F50ECAB22>acs.[^\./\?]+?.aliyuncs.com),可以从中获取到目标通用唯一识别码,即F8B5752B-2C6B-452F-92A1-096F50ECAB22,并进一步根据该目标通用唯一识别码确定对应的目标产品名称Acs。
另一方面,将所述请求方式属性及请求路径按照预设的规则组合后,与所有的接口正则表达式进行正则匹配,可以确定与其匹配的目标接口正则表达式为PUT_/Api/[^\./\?]+?/[^\./\?]+?/[^\./\?]+?,由于该目标接口正则表达式所属的正则字符串为(?<F8B5752B-2C6B-452F-92A1-096F50ECAE1A>PUT_/Api/[^\./\?]+?/[^\./\?]+?/[^\./\?]+?),可以从中获取到目标通用唯一识别码为F8B5752B-2C6B-452F-92A1-096F50ECAE1A,并进一步根据该目标通用唯一识别码确定对应的目标接口名称PutApi。
基于本申请的另一方面,还提供了一种应用程序接口定位设备,该设备的结构如图2所示,包括正则构建装置210、正则匹配装置220和定位装置230。具体地,所述正则构建装置210用于获取基于应用程序接口的动态参数生成的正则表达式,以及所述正则表达式与对应应用程序接口的定位信息之间的映射;所述正则匹配装置220用于在获取到接口调用请求时,将所述接口调用请求的请求参数与正则表达式进行正则匹配,获取与所述请求参数匹配的目标正则表达式,并根据正则表达式与定位信息之间的映射,确定所述目标正则表达式所对应的目标定位信息;所述定位装置230用于根据所述目标定位信息确定所述接口调用请求所调用的应用程序接口。
该设备根据预先定义的应用程序接口的相关动态参数构建正则表达式,并建立正则表达式与应用程序接口的定位信息之间的映射关系,使得通过正则表达式可以确定对应的定位信息,在接收到接口调用请求时,采用正则匹配的方式替代通过映射对象进行查找,由于正则匹配的方式不会在数据量线性增长时出现性能瓶颈,并且正则表达式的形式更加丰富,支持更加复杂的模糊匹配,因此能够满足大数据量大的复杂业务场景。
在此,本领域技术人员应当理解,所述混合查询设备可以包括但不限于用户设备、网络设备或用户设备与网络设备通过网络相集成所构成的设备。所述用户设备包括但不限于个人计算机、触控终端等实现;所述网络设备包括但不限于如网络主机、单个网络服务器、多个网络服务器集或基于云计算的计算机集合等实现。在此,云由基于云计算(CloudComputing)的大量主机或网络服务器构成,其中,云计算是分布式计算的一种,由一群松散耦合的计算机集组成的一个虚拟计算机。
所述正则构建装置210中,正则表达式以及定位信息与正则表达式的映射关系可以采用以下方式获取:首先由数据库中读取至少一个应用程序接口的动态参数以及定位信息,这些动态参数与定位信息一一对应,其可以通过一项动态参数找到一项定位信息,并由该定位信息确定特定的应用程序接口,然后基于动态参数生成正则表达式,并根据动态参数与定位信息一一对应的关系,建立正则表达式与定位信息之间的映射。此外,也可以由数据库中直接读取正则表达式以及定位信息与正则表达式的映射关系。
在此,所述应用程序接口的定位信息为用于唯一确定特定应用程序接口的信息,在实际应用中,由于不同应用产品之间可能存在同名的应用程序接口,因此本实施例中所述定位信息包括产品名称和接口名称,通过不同的产品名称来区分不同的应用,由此可以准确定位不同应用产品的同名应用程序接口。例如产品名称为Acs,接口名称为PutApi,对于名为Acs应用产品,其所使用的PutApi不同于其它应用产品的PutApi,因此只有通过Acs+PutApi,才可以定位到特定的一个应用程序接口。
所述动态参数包括接口方式属性(ApiHttpMethod)、包含动态部分的接口路径(Api Path)和包含动态部分的产品域名。对于某一特定的应用程序接口,其接口方式属性为特定的属性值,例如PUT、GET、POST等。所述接口路径和产品域名均包含两部分,即动态部分和静态部分,每个调用该应用程序接口的请求参数中均相同的部分即为静态部分,而可能发生变化的部分则为动态部分。例如,前述通过Acs+PutApi定位的应用程序接口为API_01,其接口方式属性为PUT,接口路径为/Api/Ecs/2014-05-26/CreateInstance,产品域名为acs.cn-hangzhou.aliyuncs.com,其中,动态部分为Ecs、2014-05-26、CreateInstance以及cn-hangzhou。
所述接口调用请求为需要调用任意应用程序接口的请求,例如获取指定资源的http(HyperText Transfer Protocol,超文本传输协议)请求。所述接口调用请求中的请求参数包括请求方式属性、请求路径和请求域名分别是指每个接口调用请求中所包含的特定的接口方式属性、接口路径和产品域名。
由此可知,对于调用前述应用程序接口API_01的接口调用请求,其包含的请求参数中的请求路径和请求域名无需与/Api/Ecs/2014-05-26/CreateInstance和acs.cn-hangzhou.aliyuncs.com完全一致,其动态部分只需要符合正则匹配的规则即可,例如请求路径为/Api/Ecs/2014-06-12/CreateInstance,请求域名为acs.cn-beijing.aliyuncs.com,请求方式属性为PUT,同样可以定位到应用程序接口API_01。
基于所述定位信息、动态参数以及请求参数,所述正则构建装置210具体实现两部分功能:产品正则的构建以及接口正则的构建。
一、产品正则的构建过程为:正则构建装置获取基于包含动态部分的产品域名生成的产品正则表达式,以及所述产品正则表达式与对应产品名称之间的产品映射。
在实际场景中,若由数据库读取到的信息包括包含动态部分的产品域名和产品名称,则正则构建装置使用匹配字符替代所述产品域名的动态部分,生成产品正则表达式,并与对应的产品名称建立产品映射。仍以前例所示的产品域名acs.cn-hangzhou.aliyuncs.com和产品名称Acs为例,由于其中的动态部分为cn-hangzhou,则使用匹配字符(例如[^\./\?]+?)替代,得到产品正则表达式acs.[^\./\?]+?.aliyuncs.com。所述匹配字符由符合正则表达式语法规则的一个或多个字符构成,用于表示正则表达式中的相应位置可能出现的具体字符内容。由此得到的产品正则表达式能够匹配符合该规则的任意字符串,例如acs.cn-shanghai.aliyuncs.com、acs.beijing.aliyuncs.com等。对于所述产品正则表达式acs.[^\./\?]+?.aliyuncs.com,将其与对应的产品名称Acs建立产品映射。对于多组产品域名和产品名称,可以根据上述方式一一处理,例如其它应用程序接口的产品正则表达式为account.[^\./\?].aliyuncs.com、vod.[^\./\?].aliyuncs.com等。
对于建立产品映射的方式,本申请实施例中通过构建正则字符串的方式实现。具体地,所述正则构建装置在生成产品正则表达式的同时,根据对应的产品名称生成通用唯一识别码(UUID),将该通用唯一识别码作为分组名称,并与对应的产品正则表达式组成正则字符串。例如对于产品名称Acs,生成的唯一通用识别码为F8B5752B-2C6B-452F-92A1-096F50ECAB22,将其与产品正则表达式共同组成正则字符串,由此建立两者产品正则表达式与产品名称之间的映射。在本实施例中,正则字符串可以采用如下的形式:“(?<”+分组名称+“>”+正则表达式+“)”,其中分组名称即为所述通用唯一识别码,由此可知,产品的正则字符串为:(?<F8B5752B-2C6B-452F-92A1-096F50ECAB2
2>acs.[^\./\?]+?.aliyuncs.com)。
进一步地,由于通用唯一识别码由产品名称唯一确定,因此正则匹配装置还用于在获取基于包含动态部分的产品域名生成的产品正则表达式,并根据对应的产品名称生成通用唯一识别码之后,将所述通用唯一识别码和对应的产品名称以键值的形式保存至映射对象(MAP)中,在需要使用时由正则匹配装置在映射对象中查找即可取出。
二、接口正则的构建过程为:正则构建装置获取基于接口方式属性和包含动态部分的接口路径生成的接口正则表达式,以及所述接口正则表达式与对应接口名称之间的接口映射。
在实际场景中,若由数据库读取到的信息包括接口方式属性、包含动态部分的接口路径和接口名称,则正则构建装置使用匹配字符替代所述接口路径的动态部分,并结合所述接口方式属性生成接口正则表达式,并与对应的接口名称建立接口映射。仍以前例所示的接口路径/Api/Ecs/2014-05-26/CreateInstance、接口方式属性PUT和接口名称PutApi为例,由于其中的动态部分为Ecs、2014-05-26和CreateInstance,则使用匹配字符(例如[^\./\?]+?)替代,得到接口品正则表达式PUT_/Api/[^\./\?]+?/[^\./\?]+?/[^\./\?]+?。由此得到的接口正则表达式能够匹配符合该规则的任意字符串,例如PUT_/Api/Ecs/2014-06-12/CreateInstance、PUT_/Api/Ecs_1/2014-06-12/CreateInstance等。对于所述接口正则表达式PUT_/Api/Ecs/2014-06-12/CreateInstance,将其与对应的接口名称PutApi建立接口映射。对于多组接口路径、接口调用方式和接口名称,可以根据上述方式一一处理,例如得到其它的接口正则表达式GET_/Api/[^\./\?]+?/[^\./\?]+?,PUT_/v2/[^\./\?]+?/[^\./\?]+?等。
对于建立接口映射的方式,同样可以通过构建正则字符串的方式实现。具体地,正则构建装置在生成接口正则表达式的同时,根据对应的接口名称生成通用唯一识别码(UUID),将该通用唯一识别码作为分组名称,并与对应的接口正则表达式组成正则字符串。例如对于接口名称PutApi,生成的唯一通用识别码为F8B5752B-2C6B-452F-92A1-096F50ECAE1A,将其与接口正则表达式共同组成正则字符串,由此建立两者接口正则表达式与接口名称之间的映射。在本实施例中,可以采用与产品部分类似的正则字符串形式,由此,生成的接口的正则字符串为(?<F8B5752B-2C6B-452F-92A1-096F50ECAE1A>PUT_/Api/[^\./\?]+?/[^\./\?]+?/[^\./\?]+?)。
进一步地,对于通用唯一识别码与接口名称之间的对应关系,同样可以采用以下方式保存,即获取基于接口方式属性和包含动态部分的接口路径生成的接口正则表达式,并根据对应的接口名称生成通用唯一识别码之后,将所述通用唯一识别码和对应的接口名称以键值的形式保存至映射对象中,在需要使用时由正则匹配装置在映射对象中查找即可取出。
所述正则构建装置210中生成的正则表达式作为后续处理的匹配样本,用来与请求中的相关请求参数进行正则匹配。对于正则匹配装置,其进行正则匹配的过程,包括两个部分:产品正则匹配和接口正则匹配。所述产品正则匹配的过程为:将请求域名与产品正则表达式进行正则匹配,获取与所述请求域名匹配的目标产品正则表达式,并根据所述产品映射确定所述目标产品正则表达式对应的目标产品名称。相应地,所述将请求方式属性及请求路径与接口正则表达式进行正则匹配,获取与所述请求方式属性及请求路径匹配的目标接口正则表达式,并根据所述接口映射确定所述目标接口正则表达式对应的目标接口名称。
仍以前述场景为例,若收到的接口调用请求中所述请求域名为acs.cn-shanghai.aliyuncs.com,请求方式属性为PUT,请求路径为/Api/Ecs/2014-06-12/CreateInstance,则将所述请求域名与产品正则表达式进行正则匹配,将请求方式属性及请求路径与接口正则表达式进行正则匹配。
正则匹配装置将请求域名与所有的产品正则表达式进行匹配,可以确定与该请求域名匹配的目标产品正则表达式为acs.[^\./\?]+?.aliyuncs.com,由于该目标产品正则表达式所属的正则字符串为(?<F8B5752B-2C6B-452F-92A1-096F50ECAB22>acs.[^\./\?]+?.aliyuncs.com),可以从中获取到目标通用唯一识别码,即F8B5752B-2C6B-452F-92A1-096F50ECAB22,并进一步根据该目标通用唯一识别码确定对应的目标产品名称Acs。
另一方面,正则匹配装置将所述请求方式属性及请求路径按照预设的规则组合后,与所有的接口正则表达式进行正则匹配,可以确定与其匹配的目标接口正则表达式为PUT_/Api/[^\./\?]+?/[^\./\?]+?/[^\./\?]+?,由于该目标接口正则表达式所属的正则字符串为(?<F8B5752B-2C6B-452F-92A1-096F50ECAE1A>PUT_/Api/[^\./\?]+?/[^\./\?]+?/[^\./\?]+?),可以从中获取到目标通用唯一识别码为F8B5752B-2C6B-452F-92A1-096F50ECAE1A,并进一步根据该目标通用唯一识别码确定对应的目标接口名称PutApi。
图3为采用本申请实施例中的方案对应用程序接口进行定位时的数据交互示意图,首先,由数据源中异步读取应用程序接口的相关信息,包括定位信息(产品名称、接口名称)以及动态参数(产品域名、接口方式属性和接口路径)等,以此构建各个应用程序接口的正则(包括产品正则和接口正则)。产品正则和接口正则构建完成后,均以正则字符串的形式作为匹配样本进行保存,在收到接口调用请求后,根据请求中的请求域名、请求路径和请求方式属性等信息,与正则字符串中的正则表达式部分进行匹配,解析出目标产品名称和目标接口名称。然后实现应用程序接口的定位,根据目标产品名称和目标接口名称确定所需要调用的应用程序接口。
本申请实施例还提供了一种应用程序接口定位设备,该设备包括:
处理器;
以及被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器:获取基于应用程序接口的动态参数生成的正则表达式,以及所述正则表达式与对应应用程序接口的定位信息之间的映射;在获取到接口调用请求时,将所述接口调用请求的请求参数与正则表达式进行正则匹配,获取与所述请求参数匹配的目标正则表达式,并根据正则表达式与定位信息之间的映射,确定所述目标正则表达式所对应的目标定位信息;根据所述目标定位信息确定所述接口调用请求所调用的应用程序接口。
综上所述,本申请的技术方案根据预先定义的应用程序接口的相关动态参数构建正则表达式,并建立正则表达式与应用程序接口的定位信息之间的映射关系,使得通过正则表达式可以确定对应的定位信息,在接收到接口调用请求时,采用正则匹配的方式替代通过映射对象进行查找,由于正则匹配的方式不会在数据量线性增长时出现性能瓶颈,并且正则表达式的形式更加丰富,支持更加复杂的模糊匹配,因此能够满足大数据量大的复杂业务场景。
需要注意的是,本申请可在软件和/或软件与硬件的组合体中被实施,例如,可采用专用集成电路(ASIC)、通用目的计算机或任何其他类似硬件设备来实现。在一个实施例中,本申请的软件程序可以通过处理器执行以实现上文所述步骤或功能。同样地,本申请的软件程序(包括相关的数据结构)可以被存储到计算机可读记录介质中,例如,RAM存储器,磁或光驱动器或软磁盘及类似设备。另外,本申请的一些步骤或功能可采用硬件来实现,例如,作为与处理器配合从而执行各个步骤或功能的电路。
另外,本申请的一部分可被应用为计算机程序产品,例如计算机程序指令,当其被计算机执行时,通过该计算机的操作,可以调用或提供根据本申请的方法和/或技术方案。而调用本申请的方法的程序指令,可能被存储在固定的或可移动的记录介质中,和/或通过广播或其他信号承载媒体中的数据流而被传输,和/或被存储在根据所述程序指令运行的计算机设备的工作存储器中。在此,根据本申请的一个实施例包括一个装置,该装置包括用于存储计算机程序指令的存储器和用于执行程序指令的处理器,其中,当该计算机程序指令被该处理器执行时,触发该装置运行基于前述根据本申请的多个实施例的方法和/或技术方案。
对于本领域技术人员而言,显然本申请不限于上述示范性实施例的细节,而且在不背离本申请的精神或基本特征的情况下,能够以其他的具体形式实现本申请。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本申请的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本申请内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。装置权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。
Claims (21)
1.一种应用程序接口定位方法,其中,该方法包括:
获取基于应用程序接口的动态参数生成的正则表达式,以及所述正则表达式与对应应用程序接口的定位信息之间的映射;
在获取到接口调用请求时,将所述接口调用请求的请求参数与正则表达式进行正则匹配,获取与所述请求参数匹配的目标正则表达式,并根据正则表达式与定位信息之间的映射,确定所述目标正则表达式所对应的目标定位信息;
根据所述目标定位信息确定所述接口调用请求所调用的应用程序接口。
2.根据权利要求1所述的方法,其中,所述定位信息包括接口名称和产品名称,所述动态参数包括接口方式属性、包含动态部分的接口路径和包含动态部分的产品域名,所述请求参数包括请求方式属性、请求路径和请求域名;
获取基于应用程序接口的动态参数生成的正则表达式,以及所述正则表达式与对应应用程序接口的定位信息之间的映射,包括:
获取基于包含动态部分的产品域名生成的产品正则表达式,以及所述产品正则表达式与对应产品名称之间的产品映射;并获取基于接口方式属性和包含动态部分的接口路径生成的接口正则表达式,以及所述接口正则表达式与对应接口名称之间的接口映射;
在获取到接口调用请求时,将所述接口调用请求的请求参数与正则表达式进行正则匹配,获取与所述请求参数匹配的目标正则表达式,并根据正则表达式与定位信息之间的映射,确定所述目标正则表达式所对应的目标定位信息,包括:
在获取到接口调用请求时,将请求域名与产品正则表达式进行正则匹配,获取与所述请求域名匹配的目标产品正则表达式,并根据所述产品映射确定所述目标产品正则表达式对应的目标产品名称,以及将请求方式属性及请求路径与接口正则表达式进行正则匹配,获取与所述请求方式属性及请求路径匹配的目标接口正则表达式,并根据所述接口映射确定所述目标接口正则表达式对应的目标接口名称。
3.根据权利要求2所述的方法,其中,获取基于包含动态部分的产品域名生成的产品正则表达式,以及所述产品正则表达式与对应产品名称之间的产品映射,包括:
使用匹配字符替代所述产品域名的动态部分,生成产品正则表达式,并与对应的产品名称建立产品映射。
4.根据权利要求2所述的方法,其中,获取基于包含动态部分的产品域名生成的产品正则表达式,以及所述产品正则表达式与对应产品名称之间的产品映射,包括:
获取基于包含动态部分的产品域名生成的产品正则表达式,并根据对应的产品名称生成通用唯一识别码;
将通用唯一识别码和对应的产品正则表达式组成正则字符串。
5.根据权利要求4所述的方法,其中,将请求域名与产品正则表达式进行正则匹配,获取与所述请求域名匹配的目标产品正则表达式,并根据所述产品映射确定所述目标产品正则表达式对应的目标产品名称,包括:
将请求域名与产品正则表达式进行正则匹配,获取与所述请求域名匹配的目标产品正则表达式;
获取所述匹配的目标产品正则表达式所属的正则字符串中的目标通用唯一识别码;
根据所述目标通用唯一识别码确定对应的目标产品名称。
6.根据权利要求5所述的方法,其中,获取基于包含动态部分的产品域名生成的产品正则表达式,并根据对应的产品名称生成通用唯一识别码之后,还包括:
将所述通用唯一识别码和对应的产品名称以键值的形式保存至映射对象中;
根据所述目标通用唯一识别码确定对应的目标产品名称,包括:
在映射对象中根据所述目标通用唯一识别码查找到对应的目标产品名称。
7.根据权利要求2所述的方法,其中,获取基于接口方式属性和包含动态部分的接口路径生成的接口正则表达式,以及所述接口正则表达式与对应接口名称之间的接口映射,包括:
使用匹配字符替代所述接口路径的动态部分,并结合所述接口方式属性生成接口正则表达式,并与对应的接口名称建立接口映射。
8.根据权利要求2所述的方法,其中,获取基于接口方式属性和包含动态部分的接口路径生成的接口正则表达式,以及所述接口正则表达式与对应接口名称之间的接口映射,包括:
获取基于接口方式属性和包含动态部分的接口路径生成的接口正则表达式,并根据对应的接口名称生成通用唯一识别码;
将通用唯一识别码和对应的接口正则表达式组成正则字符串。
9.根据权利要求8所述的方法,其中,将请求方式属性及请求路径与接口正则表达式进行正则匹配,获取与所述请求方式属性及请求路径匹配的目标接口正则表达式,并根据所述接口映射确定所述目标接口正则表达式对应的目标接口名称,包括:
将请求方式属性及请求路径与接口正则表达式进行正则匹配,获取与所述请求方式属性及请求路径匹配的目标接口正则表达式;
获取所述匹配的目标接口正则表达式所属的正则字符串中的目标通用唯一识别码;
根据所述目标通用唯一识别码确定对应的目标接口名称。
10.根据权利要求9述的方法,其中,获取基于接口方式属性和包含动态部分的接口路径生成的接口正则表达式,并根据对应的接口名称生成通用唯一识别码之后,还包括:
将所述通用唯一识别码和对应的接口名称以键值的形式保存至映射对象中;
根据所述目标通用唯一识别码确定对应的目标接口名称,包括:
在映射对象中根据所述目标通用唯一识别码查找到对应的目标接口名称。
11.一种应用程序接口定位设备,其中,该设备包括:
正则构建装置,用于获取基于应用程序接口的动态参数生成的正则表达式,以及所述正则表达式与对应应用程序接口的定位信息之间的映射;
正则匹配装置,用于在获取到接口调用请求时,将所述接口调用请求的请求参数与正则表达式进行正则匹配,获取与所述请求参数匹配的目标正则表达式,并根据正则表达式与定位信息之间的映射,确定所述目标正则表达式所对应的目标定位信息;
定位装置,用于根据所述目标定位信息确定所述接口调用请求所调用的应用程序接口。
12.根据权利要求11所述的设备,其中,所述定位信息包括接口名称和产品名称,所述动态参数包括接口方式属性、包含动态部分的接口路径和包含动态部分的产品域名,所述请求参数包括请求方式属性、请求路径和请求域名;
所述正则构建装置,用于获取基于包含动态部分的产品域名生成的产品正则表达式,以及所述产品正则表达式与对应产品名称之间的产品映射;并获取基于接口方式属性和包含动态部分的接口路径生成的接口正则表达式,以及所述接口正则表达式与对应接口名称之间的接口映射;
所述正则匹配装置,用于在获取到接口调用请求时,将请求域名与产品正则表达式进行正则匹配,获取与所述请求域名匹配的目标产品正则表达式,并根据所述产品映射确定所述目标产品正则表达式对应的目标产品名称;以及将请求方式属性及请求路径与接口正则表达式进行正则匹配,获取与所述请求方式属性及请求路径匹配的目标接口正则表达式,并根据所述接口映射确定所述目标接口正则表达式对应的目标接口名称。
13.根据权利要求12所述的设备,其中,所述正则构建装置,用于使用匹配字符替代所述产品域名的动态部分,生成产品正则表达式,并与对应的产品名称建立产品映射。
14.根据权利要求12所述的设备,其中,所述正则构建装置,用于获取基于包含动态部分的产品域名生成的产品正则表达式,并根据对应的产品名称生成通用唯一识别码;
将通用唯一识别码和对应的产品正则表达式组成正则字符串。
15.根据权利要求14所述的设备,其中,所述正则匹配装置,用于将请求域名与产品正则表达式进行正则匹配,获取与所述请求域名匹配的目标产品正则表达式;获取所述匹配的目标产品正则表达式所属的正则字符串中的目标通用唯一识别码;根据所述目标通用唯一识别码确定对应的目标产品名称。
16.根据权利要求15所述的设备,其中,所述正则构建装置,还用于在获取基于包含动态部分的产品域名生成的产品正则表达式,并根据对应的产品名称生成通用唯一识别码之后,将所述通用唯一识别码和对应的产品名称以键值的形式保存至映射对象中;
所述正则匹配装置,用于将请求域名与产品正则表达式进行正则匹配,获取与所述请求域名匹配的目标产品正则表达式;获取所述匹配的目标产品正则表达式所属的正则字符串中的目标通用唯一识别码;在映射对象中根据所述目标通用唯一识别码查找到对应的目标产品名称。
17.根据权利要求12所述的设备,其中,所述正则构建装置,用于使用匹配字符替代所述接口路径的动态部分,并结合所述接口方式属性生成接口正则表达式,并与对应的接口名称建立接口映射。
18.根据权利要求12所述的设备,其中,所述正则构建装置,用于获取基于接口方式属性和包含动态部分的接口路径生成的接口正则表达式,并根据对应的接口名称生成通用唯一识别码;将通用唯一识别码和对应的接口正则表达式组成正则字符串。
19.根据权利要求18所述的设备,其中,所述正则匹配装置,用于将请求方式属性及请求路径与接口正则表达式进行正则匹配,获取与所述请求方式属性及请求路径匹配的目标接口正则表达式;获取所述匹配的目标接口正则表达式所属的正则字符串中的目标通用唯一识别码;根据所述目标通用唯一识别码确定对应的目标接口名称。
20.根据权利要求19述的设备,其中,所述正则构建装置,还用于在获取基于接口方式属性和包含动态部分的接口路径生成的接口正则表达式,并根据对应的接口名称生成通用唯一识别码之后,将所述通用唯一识别码和对应的接口名称以键值的形式保存至映射对象中;
所述正则匹配装置,用于将请求方式属性及请求路径与接口正则表达式进行正则匹配,获取与所述请求方式属性及请求路径匹配的目标接口正则表达式;获取所述匹配的目标接口正则表达式所属的正则字符串中的目标通用唯一识别码;在映射对象中根据所述目标通用唯一识别码查找到对应的目标接口名称。
21.一种应用程序接口定位设备,其中,该设备包括:
处理器;
以及被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器:获取基于应用程序接口的动态参数生成的正则表达式,以及所述正则表达式与对应应用程序接口的定位信息之间的映射;在获取到接口调用请求时,将所述接口调用请求的请求参数与正则表达式进行正则匹配,获取与所述请求参数匹配的目标正则表达式,并根据正则表达式与定位信息之间的映射,确定所述目标正则表达式所对应的目标定位信息;根据所述目标定位信息确定所述接口调用请求所调用的应用程序接口。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610133997 | 2016-03-09 | ||
CN2016101339977 | 2016-03-09 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107423037A true CN107423037A (zh) | 2017-12-01 |
CN107423037B CN107423037B (zh) | 2021-04-02 |
Family
ID=60423965
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710138847.XA Active CN107423037B (zh) | 2016-03-09 | 2017-03-09 | 应用程序接口定位方法及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107423037B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110968296A (zh) * | 2019-12-03 | 2020-04-07 | 政采云有限公司 | 一种数据获取方法、装置、设备及可读存储介质 |
CN110971664A (zh) * | 2019-10-31 | 2020-04-07 | 北京浪潮数据技术有限公司 | 一种接口服务管理系统 |
CN111338969A (zh) * | 2020-03-23 | 2020-06-26 | 深圳开源互联网安全技术有限公司 | 基于正则动态匹配请求参数并修改的方法及系统 |
CN111695840A (zh) * | 2019-03-11 | 2020-09-22 | 北京京东尚科信息技术有限公司 | 一种实现流程控制的方法和装置 |
CN117390030B (zh) * | 2023-12-12 | 2024-03-08 | 北京仁科互动网络技术有限公司 | 多维参数映射配置方法、装置和电子设备 |
Citations (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040111727A1 (en) * | 2002-12-05 | 2004-06-10 | Gunter Schwarzbauer | Automatic context management for web applications with client side code execution |
US20080005730A1 (en) * | 2002-01-18 | 2008-01-03 | Bea Systems, Inc. | Flexible and extensible java bytecode instrumentation system |
US20080163078A1 (en) * | 2004-02-03 | 2008-07-03 | Corizon Limited | Method and Apparatus For Composite User Interface Creation |
CN101216760A (zh) * | 2007-12-28 | 2008-07-09 | 北京方正国际软件系统有限公司 | 一种动态映射接口调用系统及方法 |
CN101339500A (zh) * | 2008-05-22 | 2009-01-07 | 清华大学 | 基于xml模式的数据绑定应用程序接口生成方法 |
US20100106811A1 (en) * | 2004-02-20 | 2010-04-29 | Gtecko, Ltd | System and Unified Setting Interface For Configuring Network Manageable Devices |
CN101853301A (zh) * | 2010-05-25 | 2010-10-06 | 华为技术有限公司 | 正则表达式匹配的方法和系统 |
CN102130689A (zh) * | 2009-12-04 | 2011-07-20 | 特克特朗尼克公司 | 串行比特流正则表达式引擎 |
CN102902780A (zh) * | 2012-09-28 | 2013-01-30 | 五八有限公司 | 一种统一资源定位符url动态匹配方法及装置 |
CN103116508A (zh) * | 2013-01-18 | 2013-05-22 | 浙江吉利汽车研究院有限公司杭州分公司 | 一种sap系统的通用接口及其实现方法 |
US20140047359A1 (en) * | 2012-08-08 | 2014-02-13 | Arnstein Osnes Teigene | Mechanism for adding new search modes to user agent |
US20140115566A1 (en) * | 2012-10-19 | 2014-04-24 | Microsoft Corporation | State machine control of a debugger |
CN103793240A (zh) * | 2012-11-02 | 2014-05-14 | 腾讯科技(深圳)有限公司 | 接口扫描方法、接口扫描装置及相应的插件更新方法 |
CN103914479A (zh) * | 2013-01-06 | 2014-07-09 | 北京金山安全软件有限公司 | 资源请求的匹配方法和装置 |
CN104834856A (zh) * | 2015-05-11 | 2015-08-12 | 福建六壬网安股份有限公司 | 一种新型正则表达式调用接口实现方式 |
CN104932910A (zh) * | 2014-03-20 | 2015-09-23 | 中国移动通信集团公司 | 应用程序接口扩展的方法及系统 |
-
2017
- 2017-03-09 CN CN201710138847.XA patent/CN107423037B/zh active Active
Patent Citations (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080005730A1 (en) * | 2002-01-18 | 2008-01-03 | Bea Systems, Inc. | Flexible and extensible java bytecode instrumentation system |
US20040111727A1 (en) * | 2002-12-05 | 2004-06-10 | Gunter Schwarzbauer | Automatic context management for web applications with client side code execution |
US20080163078A1 (en) * | 2004-02-03 | 2008-07-03 | Corizon Limited | Method and Apparatus For Composite User Interface Creation |
US20100106811A1 (en) * | 2004-02-20 | 2010-04-29 | Gtecko, Ltd | System and Unified Setting Interface For Configuring Network Manageable Devices |
CN101216760A (zh) * | 2007-12-28 | 2008-07-09 | 北京方正国际软件系统有限公司 | 一种动态映射接口调用系统及方法 |
CN101339500A (zh) * | 2008-05-22 | 2009-01-07 | 清华大学 | 基于xml模式的数据绑定应用程序接口生成方法 |
CN102130689A (zh) * | 2009-12-04 | 2011-07-20 | 特克特朗尼克公司 | 串行比特流正则表达式引擎 |
CN101853301A (zh) * | 2010-05-25 | 2010-10-06 | 华为技术有限公司 | 正则表达式匹配的方法和系统 |
US20140047359A1 (en) * | 2012-08-08 | 2014-02-13 | Arnstein Osnes Teigene | Mechanism for adding new search modes to user agent |
CN102902780A (zh) * | 2012-09-28 | 2013-01-30 | 五八有限公司 | 一种统一资源定位符url动态匹配方法及装置 |
US20140115566A1 (en) * | 2012-10-19 | 2014-04-24 | Microsoft Corporation | State machine control of a debugger |
CN103793240A (zh) * | 2012-11-02 | 2014-05-14 | 腾讯科技(深圳)有限公司 | 接口扫描方法、接口扫描装置及相应的插件更新方法 |
CN103914479A (zh) * | 2013-01-06 | 2014-07-09 | 北京金山安全软件有限公司 | 资源请求的匹配方法和装置 |
CN103116508A (zh) * | 2013-01-18 | 2013-05-22 | 浙江吉利汽车研究院有限公司杭州分公司 | 一种sap系统的通用接口及其实现方法 |
CN104932910A (zh) * | 2014-03-20 | 2015-09-23 | 中国移动通信集团公司 | 应用程序接口扩展的方法及系统 |
CN104834856A (zh) * | 2015-05-11 | 2015-08-12 | 福建六壬网安股份有限公司 | 一种新型正则表达式调用接口实现方式 |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111695840A (zh) * | 2019-03-11 | 2020-09-22 | 北京京东尚科信息技术有限公司 | 一种实现流程控制的方法和装置 |
CN111695840B (zh) * | 2019-03-11 | 2023-11-07 | 北京京东振世信息技术有限公司 | 一种实现流程控制的方法和装置 |
CN110971664A (zh) * | 2019-10-31 | 2020-04-07 | 北京浪潮数据技术有限公司 | 一种接口服务管理系统 |
CN110971664B (zh) * | 2019-10-31 | 2023-04-18 | 北京浪潮数据技术有限公司 | 一种接口服务管理系统 |
CN110968296A (zh) * | 2019-12-03 | 2020-04-07 | 政采云有限公司 | 一种数据获取方法、装置、设备及可读存储介质 |
CN110968296B (zh) * | 2019-12-03 | 2023-07-25 | 政采云有限公司 | 一种数据获取方法、装置、设备及可读存储介质 |
CN111338969A (zh) * | 2020-03-23 | 2020-06-26 | 深圳开源互联网安全技术有限公司 | 基于正则动态匹配请求参数并修改的方法及系统 |
CN117390030B (zh) * | 2023-12-12 | 2024-03-08 | 北京仁科互动网络技术有限公司 | 多维参数映射配置方法、装置和电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN107423037B (zh) | 2021-04-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107423037A (zh) | 应用程序接口定位方法及设备 | |
US11956327B2 (en) | Application logging framework | |
CN107534671B (zh) | 分布式服务实体和关联的聚合与联合 | |
US7953722B2 (en) | Query response service for business objects | |
US7099888B2 (en) | Accessing a remotely located nested object | |
US8224804B2 (en) | Indexing of partitioned external data sources | |
US8214355B2 (en) | Small table: multitenancy for lots of small tables on a cloud database | |
JP2010519624A (ja) | エンティティ向けrest | |
CN108279987A (zh) | 应用程序的版本管理方法及装置 | |
EP2990965B1 (en) | Versatile data model | |
CN102289473A (zh) | 一种多服务器分页查询的装置及方法 | |
US8706732B1 (en) | Managing information about entities using clusters of received observations | |
CN108549569A (zh) | 一种搜索应用程序内信息的方法及设备 | |
US20170177706A1 (en) | Category-Based Search System and Method for Providing Application Related Search Results | |
US8176097B2 (en) | Maintaining data coherency within related multi-perspective user interfaces via session-less queries | |
CN106547646B (zh) | 一种数据备份及恢复方法、数据备份及恢复装置 | |
CN106611000A (zh) | 一种检索资源对象的方法、装置和系统 | |
CN107515866B (zh) | 一种数据操作方法、装置和系统 | |
US8156162B2 (en) | Storage method and search method for mark event on two-dimensional space | |
CN109726295A (zh) | 品牌知识图谱显示方法、装置、图服务器及存储介质 | |
CN110020243A (zh) | 物联网数据的查询方法、装置、物联网服务器和存储介质 | |
CN105893396A (zh) | 基于附近位置来解释用户查询 | |
CN104021216A (zh) | 消息代理服务器及信息发布订阅方法和系统 | |
WO2020024824A1 (zh) | 一种用户状态标识确定方法及装置 | |
CN106294700A (zh) | 一种日志的存储与读取方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |