CN115712566A - 一种针对接口字段的校验方法、装置、设备和存储介质 - Google Patents
一种针对接口字段的校验方法、装置、设备和存储介质 Download PDFInfo
- Publication number
- CN115712566A CN115712566A CN202211435142.1A CN202211435142A CN115712566A CN 115712566 A CN115712566 A CN 115712566A CN 202211435142 A CN202211435142 A CN 202211435142A CN 115712566 A CN115712566 A CN 115712566A
- Authority
- CN
- China
- Prior art keywords
- interface
- field
- checking
- keyword
- verification
- 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
Images
Abstract
本申请涉及一种针对接口字段的校验方法、装置、设备和存储介质。所述方法应用于微服务应用系统,包括:接收接口校验请求;确定接口校验请求中的待校验接口,并抽取待校验接口中的方法名和所述方法名所在的类名;将待校验接口中的方法名和方法名所在的类名拼接为关键词;在预先建立的接口配置文件中根据关键词找到与关键词对应的字段校验规则,其中,配置文件包括多个字段校验规则;根据与关键词对应的字段校验规则对所述待校验接口进行字段校验。本申请能实现简单快捷的校验,避免了联调过程中对接口的某个字段进行校验时就需要修改代码、提交代码、打包工程等过程,节省了时间、人力和物力成本,减少了对程序员操作的依赖,从而提升了接口联调的效率。
Description
技术领域
本申请涉及计算机技术与数据处理技术领域,更为具体来说,本申请涉及一种针对接口字段的校验方法、装置、设备和存储介质。
背景技术
近年来,程序产口的开发与应用越来越广泛,但程序产品的代码在写好后要进行一系列的联调,包括测试和校验等。然而在联调过程中对接口的某个字段进行校验时,就需要修改代码、提交代码、打包工程、部署工程、测试验证等等过程,这过程不可谓不长,特别是再遇到一些未知的环境因素影响时,所消耗的时间成本就会更大,从而影响了联调的效率。
发明内容
基于上述技术问题,本发明旨在通过预先建立的接口配置文件对接口字段进行校验,其中,所述配置文件包括多个字段校验规则,以解决接口联调过程消耗时间长的问题。
本发明第一方面提供了一种针对接口字段的校验方法,应用于微服务应用系统,所述方法包括:
接收接口校验请求;
确定所述接口校验请求中的待校验接口,并抽取所述待校验接口中的方法名和所述方法名所在的类名;
将所述待校验接口中的方法名和所述方法名所在的类名拼接为关键词;
在预先建立的接口配置文件中根据所述关键词找到与所述关键词对应的字段校验规则,其中,所述配置文件包括多个字段校验规则;
根据与所述关键词对应的字段校验规则对所述待校验接口进行字段校验。
在本发明的一些实施例中,所述根据与所述关键词对应的字段校验规则对所述待校验接口进行字段校验之前,还包括:
在所述接口校验请求中的方法代码里查找与所述关键词对应的字段校验规则;
若所述方法代码里存在与所述关键词对应的字段校验规则,则删去该字段校验规则对应的方法属性,其中,所述方法属性包括方法的注解。
在本发明的一些实施例中,所述根据与所述关键词对应的字段校验规则对所述待校验接口进行字段校验,包括:
将与所述关键词对应的字段校验规则作为目标规则,并在所述目标规则中查询初始输入参数;
将所述接口校验请求中的方法作为目标方法,若找到初始输入参数,基于所述初始输入参数对所述目标方法进行字段校验;
若找不到初始输入参数,基于所述目标规则对所述目标方法进行字段校验。
在本发明的一些实施例中,所述基于所述初始输入参数对所述目标方法进行字段校验,包括:
获取预先设计的目标方法的测试用例,将所述初始输入参数输入所述测试用例;
执行所述测试用例得到输出结果,根据输出结果确定所述目标方法中的字段校验结果。
在本发明的一些实施例中,所述根据输出结果确定所述目标方法中的字段校验结果,包括:
若输出结果符合预设值,则确定所述目标方法中的字段校验结果为成功;
若输出结果不符合预设值,则确定所述目标方法中的字段校验结果为异常,并检查或修改所述接口校验请求对应的接口代码。
在本发明的一些实施例中,所述接口配置文件的建立方法包括:
建立接口配置文件,并将所述接口配置文件以JSON格式存储在所述微服务应用系统的配置中心,其中,将所述接口配置文件以JSON格式存储在所述微服务应用系统的配置中心,包括:
接收校验者访问网页请求并判断与所述校验者访问网页请求对应的静态文件是否加载成功,若是,则将所述接口配置文件以JSON格式存储在所述微服务应用系统的配置中心。
在本发明的另一些实施例中,在所述抽取所述待校验接口中的方法名和所述方法名所在的类名之前,还包括:
判断所述待校验接口是否为加密接口,若是,则利用私钥对所述待校验接口中的加密数据进行解密。
本发明第二方面提供了一种针对接口字段的校验装置,所述装置包括:
接收模块,被配置为接收接口校验请求;
抽取模块,被配置为确定所述接口校验请求中的待校验接口,并抽取所述待校验接口中的方法名和所述方法名所在的类名;
拼接模块,被配置为将所述待校验接口中的方法名和所述方法名所在的类名拼接为关键词;
查找模块,被配置为在预先建立的接口配置文件中根据所述关键词找到与所述关键词对应的字段校验规则,其中,所述配置文件包括多个字段校验规则;
校验模块,被配置为根据与所述关键词对应的字段校验规则对所述待校验接口进行字段校验。
本发明第三方面提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机可读指令,计算机可读指令被处理器执行时,使得处理器执行以下步骤:
接收接口校验请求;
确定所述接口校验请求中的待校验接口,并抽取所述待校验接口中的方法名和所述方法名所在的类名;
将所述待校验接口中的方法名和所述方法名所在的类名拼接为关键词;
在预先建立的接口配置文件中根据所述关键词找到与所述关键词对应的字段校验规则,其中,所述配置文件包括多个字段校验规则;
根据与所述关键词对应的字段校验规则对所述待校验接口进行字段校验。
本发明第四方面提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以下步骤:
接收接口校验请求;
确定所述接口校验请求中的待校验接口,并抽取所述待校验接口中的方法名和所述方法名所在的类名;
将所述待校验接口中的方法名和所述方法名所在的类名拼接为关键词;
在预先建立的接口配置文件中根据所述关键词找到与所述关键词对应的字段校验规则,其中,所述配置文件包括多个字段校验规则;
根据与所述关键词对应的字段校验规则对所述待校验接口进行字段校验。
本申请实施例中提供的技术方案,至少具有如下技术效果或优点:
本申请接收接口校验请求,确定所述接口校验请求中的待校验接口,并抽取所述待校验接口中的方法名和所述方法名所在的类名,将所述待校验接口中的方法名和所述方法名所在的类名拼接为关键词,在预先建立的接口配置文件中根据所述关键词找到与所述关键词对应的字段校验规则,其中,所述配置文件包括多个字段校验规则,根据与所述关键词对应的字段校验规则对所述待校验接口进行字段校验,能实现简单快捷的校验,避免了联调过程中对接口的某个字段进行校验时就需要修改代码、提交代码、打包工程、部署工程、测试验证等等过程,节省了时间成本、人力成本和物力成本,减少了对程序员操作的依赖,从而提升了接口联调的效率,进而提升了数据处理的整体效率。不仅如此,本申请所述针对接口字段的校验方法可以应用于多种接口测试的场景。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本发明。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本申请的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了本申请一示例性实施例中的针对接口字段的校验方法步骤示意图;
图2示出了本申请一示例性实施例中存储配置文件过程示意图;
图3出了本申请一示例性实施例中一种JSON格式文件示意图;
图4示出了本申请一示例性实施例中的针对接口字段的校验装置结构示意图;
图5示出了本申请一示例性实施例所提供的一种计算机设备的结构示意图。
具体实施方式
以下,将参照附图来描述本申请的实施例。但是应该理解的是,这些描述只是示例性的,而并非要限制本申请的范围。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本申请的概念。对于本领域技术人员来说显而易见的是,本申请可以无需一个或多个这些细节而得以实施。在其他的例子中,为了避免与本申请发生混淆,对于本领域公知的一些技术特征未进行描述。
应予以注意的是,这里所使用的术语仅是为了描述具体实施例,而非意图限制根据本申请的示例性实施例。如在这里所使用的,除非上下文另外明确指出,否则单数形式也意图包括复数形式。此外,还应当理解的是,当在本说明书中使用术语“包含”和/或“包括”时,其指明存在所述特征、整体、步骤、操作、元件和/或组件,但不排除存在或附加一个或多个其他特征、整体、步骤、操作、元件、组件和/或它们的组合。
现在,将参照附图更详细地描述根据本申请的示例性实施例。然而,这些示例性实施例可以多种不同的形式来实施,并且不应当被解释为只限于这里所阐述的实施例。附图并非是按比例绘制的,其中为了清楚表达的目的,可能放大了某些细节,并且可能省略了某些细节。图中所示出的各种区域、层的形状以及它们之间的相对大小、位置关系仅是示例性的,实际中可能由于制造公差或技术限制而有所偏差,并且本领域技术人员根据实际所需可以另外设计具有不同形状、大小、相对位置的区域/层。
下面结合说明书附图1-附图5给出几个实施例来描述根据本申请的示例性实施方式。需要注意的是,下述应用场景仅是为了便于理解本申请的精神和原理而示出,本申请的实施方式在此方面不受任何限制。相反,本申请的实施方式可以应用于适用的任何场景。
随着计算机技术的发展,程序产口的开发与应用越来越广泛。但对程员而言程序代码写完不是终结。程序产品的代码在写好后要进行一系列的联调,包括测试和校验等。然而在联调过程中对接口的某个字段进行校验时,就需要修改代码、提交代码、打包工程、部署工程、测试验证等等过程,例如增加字段必填校验需要重新改代码打包部署验证,增加字段枚举值范围校验需要重新改代码打包部署验证,增加字段手机号码格式校验,需要重新改代码打包部署验证,增加字段长度校验需要重新改代码打包部署验证,等等,这过程不可谓不长,特别是再遇到一些未知的环境因素影响时,所消耗的时间成本就会更大,从而影响了联调的效率。
因此,在本申请一些示例性实施例中,提供了一种针对接口字段的校验方法,如图1所示,所述方法包括:
S1、接收接口校验请求;
S2、确定所述接口校验请求中的待校验接口,并抽取所述待校验接口中的方法名和所述方法名所在的类名;
S3、将所述待校验接口中的方法名和所述方法名所在的类名拼接为关键词;
S4、在预先建立的接口配置文件中根据所述关键词找到与所述关键词对应的字段校验规则,其中,所述配置文件包括多个字段校验规则;
S5、根据与所述关键词对应的字段校验规则对所述待校验接口进行字段校验。
这里需要说明的是,微服务应用系统是部署有所述微服务应用的集群;所述集群,包括:N个节点,N为正整数;每个节点对应一台服务器或一台云主机。本质上属于一种微服务架构,其中单个应用程序由许多松散耦合且可独立部署的较小组件或服务组成。微服务应用系统也具有接口的验证功能,当其接收到接口校验请求时就会根据请求信息进行相应的验证操作。
具体实施时,在抽取所述待校验接口中的方法名和所述方法名所在的类名之前,还包括:判断所述待校验接口是否为加密接口,若是,则利用私钥对所述待校验接口中的加密数据进行解密。解密后再抽取待校验接口中已定义好的方法。
在一种优选的实现方式中,抽取所述接口校验请求中的方法名和所述方法名所在的类名,将所述待校验接口中的方法名和所述方法名所在的类名拼接为关键词,例如,在接口校验请求中抽取到的是student方法,而student方法所在的类名为person,那么将student方法和person类进行拼接,拼接为person.student作为关键词。
在一种优选的实现方式中,预先建立的接口配置文件中根据所述关键词找到与所述关键词对应的字段校验规则。所述接口配置文件的建立方式为将所述接口配置文件以JSON格式存储在所述微服务应用系统的配置中心。JSON(JavaScript Object Notation,JS对象简谱)是一种轻量级的数据交换格式。它基于ECMAScript(European ComputerManufacturers Association,欧洲计算机协会制定的js规范)的一个子集,采用完全独立于编程语言的文本格式来存储和表示数据。简洁和清晰的层次结构使得JSON成为理想的数据交换语言。易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率。具体地,接收校验者访问网页请求并判断与所述校验者访问网页请求对应的静态文件是否加载成功,若是,如图2所示,则将所述接口配置文件以JSON格式存储在所述微服务应用系统的配置中心。如图3所示,JSON格式的配置文件定义了controlMode规则,要求为notBlank,表示要求字段不能为空。
在本申请的一些实施例中,根据与所述关键词对应的字段校验规则对所述待校验接口进行字段校验之前,还包括:在所述接口校验请求中的方法代码里查找与所述关键词对应的字段校验规则;若所述方法代码里存在与所述关键词对应的字段校验规则,则删去该字段校验规则对应的方法属性,其中,所述方法属性包括方法的注解。作为可变换的实施方式,可以将这两个步骤抽象、集成为一个插件,例如,插件名称为iverify-args.jar。在进行具体的接口字段校验时,执行该插件。若所述方法代码里存在与所述关键词对应的字段校验规则如controlMode规则,则删去该字段校验规则对应的方法属性如删去“@NotBlank(message="不能为空")”,因此该插件快速抹去方法的属性特别是注解属性。相当于拦截接口的方法并撕开一个口子,找到controlMode所在的类名,修改这个类中controlMode字段的属性,主要是针对controlMode字段抹去@NotBlank这个注解属性,然后继续执行配置中针对controlMode字段的校验规则。因此该插件简单易用,可以应用于多种接口字段验证的场景。
在一种优选的实施方式中,根据与所述关键词对应的字段校验规则对所述待校验接口进行字段校验,包括:将与所述关键词对应的字段校验规则作为目标规则,并在所述目标规则中查询初始输入参数;将所述接口校验请求中的方法作为目标方法,若找到初始输入参数,基于所述初始输入参数对所述目标方法进行字段校验;若找不到初始输入参数,基于所述目标规则对所述目标方法进行字段校验。这里需要说明的是,有些接口方法中的字段验证只是格式的要求,不需要参数验证,那么就直接基于预先定义好的验证规则进行字段校验。但存在一些接口,其字段要求输入一些值,再观测得到输出结果,根据输出结果来判定接口代码是正常还是异常的情况。
在另一种优选的实施方式中,基于所述初始输入参数对所述目标方法进行字段校验,包括:获取预先设计的目标方法的测试用例,将所述初始输入参数输入所述测试用例;执行所述测试用例得到输出结果,根据输出结果确定所述目标方法中的字段校验结果。
在本申请的一些实施例中,根据输出结果确定所述目标方法中的字段校验结果,包括:若输出结果符合预设值,则确定所述目标方法中的字段校验结果为成功;若输出结果不符合预设值,则确定所述目标方法中的字段校验结果为异常,并检查或修改所述接口校验请求对应的接口代码。
本申请接收接口校验请求,确定所述接口校验请求中的待校验接口,并抽取所述待校验接口中的方法名和所述方法名所在的类名,将所述待校验接口中的方法名和所述方法名所在的类名拼接为关键词,在预先建立的接口配置文件中根据所述关键词找到与所述关键词对应的字段校验规则,其中,所述配置文件包括多个字段校验规则,根据与所述关键词对应的字段校验规则对所述待校验接口进行字段校验,能实现简单快捷的校验,避免了联调过程中对接口的某个字段进行校验时就需要修改代码、提交代码、打包工程、部署工程、测试验证等等过程,节省了时间成本、人力成本和物力成本,减少了对程序员操作的依赖,从而提升了接口联调的效率,进而提升了数据处理的整体效率。不仅如此,本申请所述针对接口字段的校验方法可以应用于多种接口测试的场景。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本发明。
在本申请一些示例性实施例中,还提供了一种针对接口字段的校验装置,如图4所示,该装置用于执行上述任一实施例提供的针对接口字段的校验方法,所述装置包括:
接收模块,被配置为接收接口校验请求;
抽取模块,被配置为确定所述接口校验请求中的待校验接口,并抽取所述待校验接口中的方法名和所述方法名所在的类名;
拼接模块,被配置为将所述待校验接口中的方法名和所述方法名所在的类名拼接为关键词;
查找模块,被配置为在预先建立的接口配置文件中根据所述关键词找到与所述关键词对应的字段校验规则,其中,所述配置文件包括多个字段校验规则;
校验模块,被配置为根据与所述关键词对应的字段校验规则对所述待校验接口进行字段校验。
在一种优选的实施方式中,所述针对接口字段的校验装置还包括删除模块,所述删除模块用于执行以下步骤:在所述接口校验请求中的方法代码里查找与所述关键词对应的字段校验规则;若所述方法代码里存在与所述关键词对应的字段校验规则,则删去该字段校验规则对应的方法属性,其中,所述方法属性包括方法的注解。作为可变换的实施方式,可以将删除模块集成为一个插件,例如插件名称为iverify-args.jar。在进行具体的接口字段校验时,执行该插件。若所述方法代码里存在与所述关键词对应的字段校验规则如controlMode规则,则删去该字段校验规则对应的方法属性如删去“@NotBlank(message="不能为空")”,因此该插件快速抹去方法的属性特别是注解属性。相当于拦截接口的方法并撕开一个口子,找到controlMode所在的类名,修改这个类中controlMode字段的属性,主要是针对controlMode字段抹去@NotBlank这个注解属性,然后继续执行配置中针对controlMode字段的校验规则。因此该插件简单易用,可以应用于多种接口字段验证的场景。
所述校验模块在实现根据与所述关键词对应的字段校验规则对所述待校验接口进行字段校验的功能时,具体执行以下步骤:将与所述关键词对应的字段校验规则作为目标规则,并在所述目标规则中查询初始输入参数;将所述接口校验请求中的方法作为目标方法,若找到初始输入参数,基于所述初始输入参数对所述目标方法进行字段校验;若找不到初始输入参数,基于所述目标规则对所述目标方法进行字段校验。
所述校验模块还根据输出结果确定所述目标方法中的字段校验结果,具体执行以下步骤:若输出结果符合预设值,则确定所述目标方法中的字段校验结果为成功;若输出结果不符合预设值,则确定所述目标方法中的字段校验结果为异常,并检查或修改所述接口校验请求对应的接口代码。
可以理解的是,所述针对接口字段的校验装置是基于微服务应用系统的装置,还包括一些支撑性硬件或设备,在此不再赘述。应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本发明。
还需要强调的是,本申请实施例中提供的系统可以基于人工智能技术对相关的数据进行获取和处理。其中,人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、机器人技术、生物识别技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
下面请参考图5,其示出了本申请的一些实施方式所提供的一种计算机设备的示意图。如图5所示,所述计算机设备2包括:处理器200,存储器201,总线202和通信接口203,所述处理器200、通信接口203和存储器201通过总线202连接;所述存储器201中存储有可在所述处理器200上运行的计算机程序,所述处理器200运行所述计算机程序时执行本申请前述任一实施方式所提供的针对接口字段的校验方法。
其中,存储器201可能包含高速随机存取存储器(RAM:Random Access Memory),也可能还包括非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。通过至少一个通信接口203(可以是有线或者无线)实现该系统网元与至少一个其他网元之间的通信连接,可以使用互联网、广域网、本地网、城域网等。
总线202可以是ISA总线、PCI总线或EISA总线等。所述总线可以分为地址总线、数据总线、控制总线等。其中,存储器201用于存储程序,所述处理器200在接收到执行指令后,执行所述程序,前述本申请实施例任一实施方式揭示的所述针对接口字段的校验方法可以应用于处理器200中,或者由处理器200实现。
处理器200可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器200中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器200可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器201,处理器200读取存储器201中的信息,结合其硬件完成上述方法的步骤。
本申请实施方式还提供一种与前述实施方式所提供的针对接口字段的校验方法对应的计算机可读存储介质,其上存储有计算机程序,所述计算机程序在被处理器运行时,会执行前述任意实施方式所提供的针对接口字段的校验方法,所述方法包括:接收接口校验请求;抽取所述接口校验请求中的方法名和所述方法名所在的类名;将所述待校验接口中的方法名和所述方法名所在的类名拼接为关键词;在预先建立的接口配置文件中根据所述关键词找到与所述关键词对应的字段校验规则,其中,所述配置文件包括多个字段校验规则;根据与所述关键词对应的字段校验规则对所述待校验接口进行字段校验。
另外,所述计算机可读存储介质的例子还可以包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他光学、磁性存储介质,在此不再一一赘述。
本申请实施方式还提供一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现前述任意实施方式所提供的针对接口字段的校验方法的步骤,包括:接收接口校验请求;确定所述接口校验请求中的待校验接口,并抽取所述待校验接口中的方法名和所述方法名所在的类名;将所述待校验接口中的方法名和所述方法名所在的类名拼接为关键词;在预先建立的接口配置文件中根据所述关键词找到与所述关键词对应的字段校验规则,其中,所述配置文件包括多个字段校验规则;根据与所述关键词对应的字段校验规则对所述待校验接口进行字段校验。在所述根据与所述关键词对应的字段校验规则对所述待校验接口进行字段校验之前,该计算机程序还执行:在所述接口校验请求中的方法代码里查找与所述关键词对应的字段校验规则;若所述方法代码里存在与所述关键词对应的字段校验规则,则删去该字段校验规则对应的方法属性,其中,所述方法属性包括方法的注解。
需要说明的是:在此提供的算法和显示不与任何特定计算机、虚拟装置或者其它设备有固有相关。各种通用装置也可以与基于在此的示教一起使用。根据上面的描述,构造这类装置所要求的结构是显而易见的。此外,本申请也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本申请的内容,并且上面对特定语言所做的描述是为了披露本申请的最佳实施方式。在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本申请的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
本申请的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本申请实施例的虚拟机的创建装置中的一些或者全部部件的一些或者全部功能。本申请还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序。实现本申请的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
以上所述,仅为本申请较佳的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (10)
1.一种针对接口字段的校验方法,应用于微服务应用系统,其特征在于,所述方法包括:
接收接口校验请求;
确定所述接口校验请求中的待校验接口,并抽取所述待校验接口中的方法名和所述方法名所在的类名;
将所述待校验接口中的方法名和所述方法名所在的类名拼接为关键词;
在预先建立的接口配置文件中根据所述关键词找到与所述关键词对应的字段校验规则,其中,所述配置文件包括多个字段校验规则;
根据与所述关键词对应的字段校验规则对所述待校验接口进行字段校验。
2.根据权利要求1所述的针对接口字段的校验方法,其特征在于,所述根据与所述关键词对应的字段校验规则对所述待校验接口进行字段校验之前,还包括:
在所述待校验接口的方法代码里查找与所述关键词对应的字段校验规则;
若所述方法代码里存在与所述关键词对应的字段校验规则,则删去该字段校验规则对应的方法属性,其中,所述方法属性包括方法的注解。
3.根据权利要求1所述的针对接口字段的校验方法,其特征在于,所述根据与所述关键词对应的字段校验规则对所述待校验接口进行字段校验,包括:
将与所述关键词对应的字段校验规则作为目标规则,并在所述目标规则中查询初始输入参数;
将所述接口校验请求中的方法作为目标方法,若找到初始输入参数,基于所述初始输入参数对所述目标方法进行字段校验;
若找不到初始输入参数,基于所述目标规则对所述目标方法进行字段校验。
4.根据权利要求3所述的针对接口字段的校验方法,其特征在于,所述基于所述初始输入参数对所述目标方法进行字段校验,包括:
获取预先设计的目标方法的测试用例,将所述初始输入参数输入所述测试用例;
执行所述测试用例得到输出结果,根据输出结果确定所述目标方法中的字段校验结果。
5.根据权利要求4所述的针对接口字段的校验方法,其特征在于,所述根据输出结果确定所述目标方法中的字段校验结果,包括:
若输出结果符合预设值,则确定所述目标方法中的字段校验结果为成功;
若输出结果不符合预设值,则确定所述目标方法中的字段校验结果为异常,并检查或修改所述接口校验请求对应的接口代码。
6.根据权利要求1所述的针对接口字段的校验方法,其特征在于,所述接口配置文件的建立方法包括:
建立接口配置文件,并将所述接口配置文件以JSON格式存储在所述微服务应用系统的配置中心;
其中,将所述接口配置文件以JSON格式存储在所述微服务应用系统的配置中心,包括:
接收校验者访问网页请求并判断与所述校验者访问网页请求对应的静态文件是否加载成功,若是,则将所述接口配置文件以JSON格式存储在所述微服务应用系统的配置中心。
7.根据权利要求1所述的针对接口字段的校验方法,其特征在于,在所述抽取所述待校验接口中的方法名和所述方法名所在的类名之前,还包括:
判断所述待校验接口是否为加密接口,若是,则利用私钥对所述待校验接口中的加密数据进行解密。
8.一种针对接口字段的校验装置,其特征在于,所述装置包括:
接收模块,被配置为接收接口校验请求;
抽取模块,被配置为确定所述接口校验请求中的待校验接口,并抽取所述待校验接口中的方法名和所述方法名所在的类名;
拼接模块,被配置为将所述待校验接口中的方法名和所述方法名所在的类名拼接为关键词;
查找模块,被配置为在预先建立的接口配置文件中根据所述关键词找到与所述关键词对应的字段校验规则,其中,所述配置文件包括多个字段校验规则;
校验模块,被配置为根据与所述关键词对应的字段校验规则对所述待校验接口进行字段校验。
9.一种计算机设备,包括存储器和处理器,其特征在于,存储器中存储有计算机可读指令,计算机可读指令被处理器执行时,使得处理器执行如权利要求1-7任一所述方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现如权利要求1-7任一所述方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211435142.1A CN115712566A (zh) | 2022-11-16 | 2022-11-16 | 一种针对接口字段的校验方法、装置、设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211435142.1A CN115712566A (zh) | 2022-11-16 | 2022-11-16 | 一种针对接口字段的校验方法、装置、设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115712566A true CN115712566A (zh) | 2023-02-24 |
Family
ID=85233425
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211435142.1A Pending CN115712566A (zh) | 2022-11-16 | 2022-11-16 | 一种针对接口字段的校验方法、装置、设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115712566A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117492823A (zh) * | 2023-12-29 | 2024-02-02 | 珠海格力电器股份有限公司 | 代码获取方法、装置、电子设备及可读存储介质 |
-
2022
- 2022-11-16 CN CN202211435142.1A patent/CN115712566A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117492823A (zh) * | 2023-12-29 | 2024-02-02 | 珠海格力电器股份有限公司 | 代码获取方法、装置、电子设备及可读存储介质 |
CN117492823B (zh) * | 2023-12-29 | 2024-04-05 | 珠海格力电器股份有限公司 | 代码获取方法、装置、电子设备及可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20200136804A1 (en) | Data processing method and apparatus | |
CN112256558B (zh) | 一种测试用例的生成方法、装置、计算机设备及存储介质 | |
CN109800258B (zh) | 数据文件部署方法、装置、计算机设备及存储介质 | |
CN111949249A (zh) | 用于基于Protobuf的项目的通用验证方法 | |
CN110673923A (zh) | Xwiki系统配置方法、系统及计算机设备 | |
CN110365724B (zh) | 任务处理方法、装置及电子设备 | |
CN111782519A (zh) | 测试方法、装置和电子设备 | |
CN108563951A (zh) | 病毒检测方法及装置 | |
CN111124480A (zh) | 应用程序包的生成方法、装置、电子设备及存储介质 | |
CN113961919A (zh) | 恶意软件检测方法和装置 | |
CN115712566A (zh) | 一种针对接口字段的校验方法、装置、设备和存储介质 | |
CN111124872A (zh) | 基于差异代码分析的分支检测方法、装置及存储介质 | |
CN106874173B (zh) | 页面模板的测试方法和装置 | |
CN117216758B (zh) | 应用安全检测系统及方法 | |
CN104601645A (zh) | 一种数据包处理方法及装置 | |
CN108829903B (zh) | 判定fpga冗余设计的代码与综合后电路一致性的方法和系统 | |
CN111782520A (zh) | 测试方法、装置和电子设备 | |
CN109324838B (zh) | 单片机程序的执行方法、执行装置及终端 | |
US11846672B2 (en) | Method and device for testing system-on-chip, electronic device using method, and computer readable storage medium | |
CN107992749B (zh) | 一种检测补丁包冲突的方法及装置 | |
CN114816772A (zh) | 基于兼容层运行的应用的排错方法、排错系统及计算设备 | |
CN114860204A (zh) | 程序处理、运行方法、装置、终端、智能卡及存储介质 | |
CN114581241A (zh) | 智能合约的处理方法和装置、处理器及电子设备 | |
CN112149951A (zh) | 风险控制方法、装置、计算机设备和存储介质 | |
CN113535580A (zh) | 一种cts测试方法、装置及测试设备 |
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 |