[go: up one dir, main page]

CN112416784A - 基于配置中心的接口校验方法、系统及装置及存储介质 - Google Patents

基于配置中心的接口校验方法、系统及装置及存储介质 Download PDF

Info

Publication number
CN112416784A
CN112416784A CN202011355685.3A CN202011355685A CN112416784A CN 112416784 A CN112416784 A CN 112416784A CN 202011355685 A CN202011355685 A CN 202011355685A CN 112416784 A CN112416784 A CN 112416784A
Authority
CN
China
Prior art keywords
verification
interface
parameter
request
rule
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
Application number
CN202011355685.3A
Other languages
English (en)
Inventor
陈伟城
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ping An Puhui Enterprise Management Co Ltd
Original Assignee
Ping An Puhui Enterprise Management Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Ping An Puhui Enterprise Management Co Ltd filed Critical Ping An Puhui Enterprise Management Co Ltd
Priority to CN202011355685.3A priority Critical patent/CN112416784A/zh
Publication of CN112416784A publication Critical patent/CN112416784A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Prevention of errors by analysis, debugging or testing of software
    • G06F11/3604Analysis of software for verifying properties of programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Prevention of errors by analysis, debugging or testing of software
    • G06F11/3668Testing of software
    • G06F11/3672Test management
    • G06F11/3684Test management for test design, e.g. generating new test cases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • G06F9/4451User profiles; Roaming

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Storage Device Security (AREA)

Abstract

本发明涉及接口校验,提供一种基于配置中心的接口校验方法、系统及装置,其中的方法包括:对本地系统内的各接口的参数校验数据进行参数配置,以生成相应的校验规则;将所述参数校验数据及其相应的校验规则移存入预设配置中心,以使所述参数校验数据与本地系统内的业务数据之间解耦;通过实时接口请求的请求参数对预设配置中心进行查询,以获取与所述实时接口请求相对应的接口校验数据的校验规则,记为待校验规则;通过所述待校验规则对所述实时接口请求的请求参数进行参数校验。本发明提供技术方案既能够解决现有的参数校验代码冗余,影响开发者开发以及维护业务的问题。

Description

基于配置中心的接口校验方法、系统及装置及存储介质
技术领域
本发明涉及接口校验技术领域,尤其涉及一种基于配置中心的接口校验方法、系统、装置及存储介质。
背景技术
随着移动互联网的兴起,各个系统间的信息传递越来越频繁,在各系统之间进行数据传输时,系统里每一个接口输入参数的正确性是非常重要的,若有参数不符合约定的规则,则会导致程序流程处理异常,甚至于导致整个系统的崩溃,因此,在每一个接口的入口处都会进行相关的参数校验。
传统的应用系统里都会在每个接口的入口处进行相应的参数校验,包括参数字段的必填、字段的长短、字段的格式以及一些具有业务逻辑的校验等等。并且,一些系统还会对接不同的第三方,针对第三接入方的不同有可能还有特殊的参数检验。
因此,对于开发者来说,需要在接口入口处编写参数合法性判断的代码,尽管是同一个接口但对于不同的接入方还会有额外的判断逻辑。然而,当系统经过长时间的开发与维护后,会发现系统的每一个接口处都是满满的参数校验,这种现象就会导致了以下几点问题:
1、代码冗余,类似的校验代码重复编写;
2、非主业务逻辑代码校多,代码阅读干扰性大;
3、时间成本较多,开发者要对每个接口每个对接方编写代码校验;
4、当校验规则需要修改时,则需对代码进行修改,并且发布新的版本。
基于以上技术问题,急需一种代码校验方法来降低参数校验代码对开发者开发业务的影响。
发明内容
本发明提供一种基于配置中心的接口校验方法、系统、电子装置以及计算机存储介质,其主要目的在于解决现有的参数校验代码冗余,影响开发者开发以及维护业务的问题。
为实现上述目的,本发明提供一种基于配置中心的接口校验方法,该方法包括如下步骤:
对本地系统内的各接口的参数校验数据进行参数配置,以生成相应的校验规则;
将所述参数校验数据及其相应的校验规则移存入预设配置中心,以使所述参数校验数据与本地系统内的业务数据之间解耦;
通过实时接口请求的请求参数对所述预设配置中心进行查询,以获取与所述实时接口请求相对应的接口校验数据的校验规则,记为待校验规则;
通过所述待校验规则对所述实时接口请求的请求参数进行参数校验。
可选地,所述参数校验数据包括接口信息、对接方信息以及字段信息,所述校验规则包括编码校验规则、对接方编码校验规则以及字段格式校验规则;并且,所述对本地系统内的各接口的参数校验数据进行参数配置,以生成相应的校验规则包括:
为所述接口信息、所述对接方信息以及所述字段信息分别配置相应的接口编码、对接方编码以及字段格式;
通过所述接口编码、所述对接方编码以及所述字段格式生成相应的接口所述编码校验规则、所述对接方编码校验规则以及所述字段格式校验规则。
可选地,将所述参数校验数据及其相应的校验规则以XML格式文件的形式存入所述预设配置中心;其中,所述XML格式文件内预设有元素节点,各元素节点均预设有相应的属性节点;并且,
所述元素节点用于存储所述参数校验数据,所述属性节点用于存储与所述参数校验数据对应的校验规则。
可选地,将所述参数校验数据及其相应的校验规则以XML格式文件的形式存入所述预设配置中心的过程包括:
解析出所述预设配置中心中的XML格式文件的元素节点和属性节点;
为各校验规则分别配置相应的元素节点,并以与各校验规则对应的接口编码和对接方编码的编码组合作为所述元素节点的键值;
将各参数校验数据存入相应的所述元素节点内,并将与所述参数校验数据对应的校验规则存入相应的属性节点内。
可选地,本地系统内的各接口均配置有相应的实现类;并所述参数校验数据还包括与所述实现类相对应的实现类信息,并且,所述对本地系统内的各接口的参数校验数据进行参数配置,以生成相应的校验规则还包括;
为所述实现类信息配置相对应的实现类格式;
通过所述实现类格式生成相应的自定义校验规则。
可选地,通过实时接口请求的请求参数对所述预设配置中心进行查询,以获取与所述实时接口请求相对应的接口校验数据的校验规则,记为待校验规则的过程包括:
对所述实时接口请求的请求参数进行解析以获取所述请求参数中请求接口编码、请求对接方编码以及请求字段数据;
通过所述请求接口编码和所述请求对接方编码的编码组合对所述预设配置中心中的XML格式文件的键值列表进行查询,以获取与所述请求接口编码和所述请求对接方编码的编码组合对应的键值;
通过所述键值确定相应的元素节点;
获取与所述键值相应的所述元素节点的属性节点内的校验规则,记为所述待校验规则。
可选地,通过所述待校验规则对所述实时接口请求的请求参数进行参数校验的过程包括:
依次执行所述待校验规则,对所述实时接口请求的请求参数进行参数校验;并且,
若所述请求参数通过所有的待校验规则的校验,则判定所述请求参数合法;若所述请求参数未通过所有的待校验规则的校验,则判定所述请求参数不合法。
另一方面,本发明还提供一种基于配置中心的接口校验系统,所述系统包括:
参数配置单元,用于对本地系统内的各接口的参数校验数据进行参数配置,以生成相应的校验规则;
数据存储单元,用于将所述参数校验数据及其相应的校验规则移存入预设配置中心,以使所述参数校验数据与本地系统内的业务数据之间解耦;
查询单元,用于通过实时接口请求的请求参数对所述预设配置中心进行查询,以获取与所述实时接口请求相对应的接口校验数据的校验规则,记为待校验规则;
校验单元,用于通过所述待校验规则对所述实时接口请求的请求参数进行参数校验。
此外,本发明还提供一种电子装置,所述电子装置包括:存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的基于配置中心的接口校验程序,所述基于配置中心的接口校验程序被所述处理器执行时实现如下步骤:
对本地系统内的各接口的参数校验数据进行参数配置,以生成相应的校验规则;
将所述参数校验数据及其相应的校验规则移存入预设配置中心,以使所述参数校验数据与本地系统内的业务数据之间解耦;
通过实时接口请求的请求参数对所述预设配置中心进行查询,以获取与所述实时接口请求相对应的接口校验数据的校验规则,记为待校验规则;
通过所述待校验规则对所述实时接口请求的请求参数进行参数校验。
另外,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有基于配置中心的接口校验程序,所述基于配置中心的接口校验程序被处理器执行时,实现如前述的基于配置中心的接口校验方法的步骤。
本发明提出的基于配置中心的接口校验方法、电子装置及计算机可读存储介质,通过提出接口参数配置化校验能有助于将接口里的参数校验与常规的业务逻辑之间实现解耦,参数校验的代码不再与常规业务的代码混在一起;开发者不再过多地编写校验代码,而是更加专注于业务逻辑的编写,减少了不必要的人力成本消耗;每个自定义检验实现类,只专注实现某一个校验规则,将个别的案例参数化,这样能够让这个校验类支持更多的业务场景,并且整个类的代码更加的清晰精简,减少类似的校验类的重复编写;接口参数校验的相关配置都是放在预设配置中心,相比于传统的代码校验,有着实时更新配置立马生效的好处,校验规则的更改无需重启应用系统。
附图说明
图1为根据本发明实施例的基于配置中心的接口校验方法的较佳实施例流程图;
图2为根据本发明实施例的电子装置的较佳实施例结构示意图;
图3为根据本发明实施例的基于配置中心的接口校验程序的内部逻辑示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
在下面的描述中,出于说明的目的,为了提供对一个或多个实施例的全面理解,阐述了许多具体细节。然而,很明显,也可以在没有这些具体细节的情况下实现这些实施例。
以下将结合附图对本申请的具体实施例进行详细描述。
实施例1
为了说明本发明提供的基于配置中心的接口校验方法,图1示出了根据本发明提供的基于配置中心的接口校验方法的流程。
如图1所示,本发明提供的基于配置中心的接口校验方法,包括:
S110:对本地系统内的各接口的参数校验数据进行参数配置,以生成相应的校验规则。
具体地,先获取本地系统的参数校验数据,并为所述参数校验数据进行相应的参数配置。需要说明的是,此处涉及的本地系统的参数校验数据主要是用于接口校验的信息,所述参数校验数据具体包括接口信息、对接方信息以及字段信息,所述校验规则包括编码校验规则、对接方编码校验规则以及字段格式校验规则;并且,对所述参数校验数据进行参数配置的过程包括:为所述接口信息、所述对接方信息以及所述字段信息分别配置相应的接口编码、对接方编码以及字段格式;通过所述接口编码、所述对接方编码以及所述字段格式生成相应的接口所述编码校验规则、所述对接方编码校验规则以及所述字段格式校验规则。
更为具体地,在为所述参数校验数据进行相应的参数配置的过程中,需要先根据接口信息(如接口名称等)为本地系统的每一个接口定义一个接口编码,根据对接方信息(对接方名称等)为本地系统的每一个对接方定义一个对接方编码;然后再进行校验规则的配置。具体配置过程为:以接口信息、对接方信息(对应各类对接方)、字段的顺序为基准,配置相对应的校验规则;例如,接口编码是否相同,对接方编码是否相同,字段格式是否相同等等
需要说明的是,在实际使用过程中,不同的接口对应不同的接口编码、不同的对接方对应不同的对接方编码,此处的编码起到一个标识的作用,例如,每个接口或每个对接方都有相应的ID,可以以各自的ID为相应的编码,或者以各自的ID+接口名称序号作为编码。
关于以接口信息、对接方信息(对应各类对接方)、字段的顺序为基准:接口信息包括接口名称(如RS-232端口等)、接口ID等信息,对接方信息包括对接方名称、对接方ID信息(用对接方编码表示)等,字段信息一般指与接口校验相关的数据代码字段信息(如一段代码串等)。因此,一般认为接口信息、对接方信息(对应各类对接方)、字段信息内均包含相应的数字序列或代码序列,这些序列内数据的顺序表征了内部隐含的信息(如RS-232端口等,即表征了相应的哪一个接口),因此,以这些信息内部的序列信息的顺序即可配置出相应的校验规则;
校验规则具体指:接口请求的接口参数中的包含的请求信息是否与待请求接口的接口编码(即内部数字序列的顺序)相同,是否与待请求对接方的对接方编码相同,是否与本地待请求接口或待请求对接方对应的字段信息的字段格式是否相同等等。需要说明的是,若后期接口请求需要请求的是接口,在请求参数自然包含与接口编码相对应的请求信息,若接口请求需要请求的是对接方,在请求参数中自然包含与对接方编码对应的请求信息,此外,无论接口请求需要请求的对象的为接口还是对接方,是否与本地待请求接口或待请求对接方对应的字段信息的字段格式是否相同的验证均会存在。
进一步地,还可以根据校验规则的常用程度,分为常用规则和自定义规则(例如,本地系统在一个工作日内调用数量超过30次,则即为常用规则,否则,记为自定义规则)。
此处的目的是,根据校验规则的常用程度(用调用次数表征)对校验规则进行一个初步的分类,便于后期对校验规则进行配置管理以及便于理解本发明提供的校验规则与现有的校验规则的不同,现有的校验规则一般仅使用常用规则。
具体地,常用规则一般为较为常用的常规校验规则,包括字段必填项是否存在、字段长度是否在阈值范围内或是否超过预设阈值、字段格式是否为预设值等等。
在实际使用过程中,这些常用规则可以以标签属性的形式呈现(即各类属性值),通过这种方式可以使配置过程更加简洁,提高工作效率。
对于自定义规则,主要目的在于实现规定的接口的校验。例如,对于一些较为重要的接口,其安全性极为重要,此时需要加强接口的验证力度。此时,即可为该接口配置相对应的实现类(具有实现类名),并为该实现类的参数进行相应的配置,自定义规则可以根据这类配置信息进行设定,例如,验证该类信息是否为前期配置的信息。此外,还可以配置相对应的错误信息,通过错误信息的验证增加灵活度。
此处将校验规则分为常规规则和自定义规则是对校验规则的进一步配置,前面的校验规则的配置为初步配置,配置出的校验规则为常规规则内的一部分,而该步骤主要是进一步自定义规则的配置,并进行校验规则的分类。
此外,对于自定义规则来讲,为进一步提高规则检验的精度,可以将检验参数分为静态参数和动态参数,以便提高校验规则的校验效果。对应静态参数,一般为预设的固定参数,这些参数在系统运行过程中是一直不变的,如:接口代码、平台代码等或者多种参数的组合后形成的固定参数。在后期校验过程中,若请求参数中对应的参数与预设的固定参数相同,则判定通过静态参数校验。由于静态参数为预设的固定参数,为了增加灵活度,可以加入动态参数的支持,通过改变动态参数来为更多字段服务,以便能够方便地从系统请求参数里获取某些字段的值。
需要说明的是,动态参数只需在参数定义时,将其格式设置为@Map[xxx]即可,此时,即会自动打上动态参数的标志,以便在后期的检验时候,自动地实时从Http请求参数里获取相应的参数,并进行检验。
S120:将所述参数校验数据及其相应的校验规则移存入预设配置中心,以使所述参数校验数据与本地系统内的业务数据之间解耦。
需要说明的是,参加校验数据:即系统内部用于进行接口校验的相关数据,业务数据是指系统内部与接口或平台实现相关业务的业务数据信息。由于现有系统内部的参数校验数据与业务数据(均为代码数据)均是存入系统内部,且是杂糅在一起的,本发明通过对参数校验数据的重新配置并将其单独保存至预设配置中心,即可将参数校验数据与业务数据分离开,实现两者的解耦。
具体地,将所述参数校验数据及其相应的校验规则以XML格式文件的形式存入所述预设配置中心;其中,所述XML格式文件内预设有元素节点,各元素节点均预设有相应的属性节点;并且,
所述元素节点用于存储所述参数校验数据,所述属性节点用于存储与所述参数校验数据对应的校验规则。
更为具体地,将所述参数校验数据及其相应的校验规则以XML格式文件的形式存入所述预设配置中心的过程包括:
解析出所述预设配置中心中的XML格式文件的元素节点和属性节点;
为各校验规则分别配置相应的元素节点,并以与各校验规则对应的接口编码和对接方编码的编码组合作为所述元素节点的键值;
将各参数校验数据存入相应的所述元素节点内,并将与所述参数校验数据对应的校验规则存入相应的属性节点内。
此外,本地系统内的各接口均配置有相应的实现类;所述参数校验数据还包括与所述实现类相对应的实现类信息;并且,所述对本地系统内的各接口的参数校验数据进行参数配置,以生成相应的校验规则还包括;
为所述实现类信息配置相对应的实现类格式;
通过所述实现类格式生成相应的自定义校验规则。
具体地,为使参数校验数据与业务数据之间解耦,可以预先在本体系统的系统内存中设置一个预设配置中心,通过预设配置中心来存储步骤S110中的生成的接口编码、平台编码校验规则等参数信息。
此外,可以采用XML格式文件来存储配置内容,对于XML格式文件来讲,XML文档中的每个成分都是一个节点。即整个文档是一个文档节点,每个XML标签是一个元素节点,包含在XML元素中的文本是文本节点,每一个XML属性是一个属性节点。基于XML格式文件的结构特性,能够将步骤S110中配置的各类信息分类存入XML格式文件中。例如,对于常用规则,由于其可以以标签属性的形式呈现(即各类属性值),此时即可分别存入XML格式文件的属性节点内。对于自定义规则,由于其即有接口方面的规则验证又存在其下级的实现类的各类信息的验证,因此,即可分别存入文档节点以及该文档节点下的文本节点内。通过这样的配置存储方式既能够更加清晰地呈现接口、平台、字段与校验规则的关系,又能够在前期的数据存储过程中以及后期的数据推送过程中,显著提高工作效率。
并且将参数配置信息存入本地系统的预设配置中心的过程包括:
在预设配置中心读取整个预设XML文件的存储配置内容;
根据读取的XML文件的存储配置内容,解析XML文件里的各个节点,并在所有节点中定义一个节点作为对象A用来存储接口编码、平台编码、字段以及对应的校验规则的所有对象,然后以接口编码+平台编码为键和对象A的为值。通过这种设置即可将各类对象的映射关系存储于系统内存中,以便提升检验效率。
S130:通过实时接口请求的请求参数对所述预设配置中心进行查询,以获取与所述实时接口请求相对应的接口校验数据的校验规则,记为待校验规则。
具体地,通过实时接口请求的请求参数对所述预设配置中心进行查询,以获取与所述实时接口请求相对应的接口校验数据的校验规则的过程包括:
对所述实时接口请求的请求参数进行解析以获取所述请求参数中请求接口编码、请求对接方编码以及请求字段数据;
通过所述请求接口编码和所述请求对接方编码的编码组合对所述预设配置中心中的XML格式文件的键值列表进行查询,以获取与所述请求接口编码和所述请求对接方编码的编码组合对应的键值;
通过所述键值确定相应的元素节点;
获取与所述键值相应的所述元素节点的属性节点内的校验规则,记为所述待校验规则。
更为具体地,通过实时接口请求的请求参数对所述预设配置中心进行查询,以获取与所述实时接口请求相对应的接口校验数据的校验规则的过程包括:
对实时获取的接口请求进行初步参数解析,以获取所述接口请求的请求参数中所要访问的接口编码和平台编码;该步骤即为接口请求的请求参数中数据信息的提取,为现有的数据信息提取的过程。
基于所述接口编码和平台编码对所述预设配置中心进行查询,以获取所述预设配置中心中与所述接口编码或和平台编码相关的校验规则。
其中,由于预设配置中心中的节点用于存储相应的校验规则,而该节点的键值是使用接口编码或平台编码设定的,因此,通过自接口参数中提取出的接口编码或平台编码即可自预设配置中心快速找到相应的校验规则。
此外,由步骤S120可知,校验规则是以XML格式文件的形式存入预设配置中心的,因此,在获取所述预设配置中心中与所述接口编码和平台编码相关的校验规则的过程中:
根据接口编码、平台编码从初始化的XML格式文件中的元素节点的键值列表里获取到与之对应的对象A(某一个元素节点),基于所述对象A获取需要进行检验的检验字段及相对应的规则对象(即校验规则)。
需要说明的是,对于获取的与该接口请求相关的所有自定义规则,一般需要根据该接口请求的具体请求参数进一步为各自定义规则进行校验参数配置,形成最终的的自定义规则。具体地,先判断自定义规则对象的属性格式是否为动态属性,如果为动态属性,则基于@Map[xxx]自动从接口请求的请求参数中获取与检验字段相相应的参数,并根据相应的参数配置相应的自定义校验规则校验参数。若为静态属性则直接配置相应的自定义校验规则的校验参数。
根据获取的所有与该接口编码和平台编码接口请求相关的校验规则(包括常用规则和经校验参数配置后的自定义规则)对该接口请求进行参数校验。
具体地,在通过所述校验规则对该接口请求进行校验的过程中,依次通过每个校验规则执行相应的逻辑判断,若该校验规则验证通过,继续调用下一个校验规则进行校验,直至所有校验规则校验完成。
在每个校验规则的校验过程中,先自接口请求的请求参数获取相应的参数或字段,然后通过校验规则对该参数或字段进行校验。
需要说明的是,请求参数包括:设备id、用户凭证、终端类型id、调用信息等等,对于设备id、终端类型id这类数据序列型参数,通常使用预先配置的常规规则进行校验,对于用户凭证、调用信息这类字段型参数,通常使用预先配置的自定义规则进行校验。需要说明的是,具体校验过程在前述校验规则的设定过程中进行了介绍,在此不再赘述。此外,由于常规规则的校验速度相比于自定义规则的校验速度更快,因此,可以先进行常规规则的校验再进行自定义规则的校验,从而提高校验效率。
S140:通过所述校验规则对所述实时接口请求的请求参数进行参数校验。
具体地,通过所述待校验规则对所述实时接口请求的请求参数进行参数校验的过程包括:
依次执行所述待校验规则,对所述实时接口请求的请求参数进行参数校验;并且,
若所述请求参数通过所有的待校验规则的校验,则判定所述请求参数合法并为所述接口请求配置与其请求参数相对应的接口或对接方平台;若所述请求参数未通过所有的待校验规则的校验,则判定所述请求参数不合法。
需要说明的是,对于一个接口请求来说,只有当所述预设配置中心中所有的校验规则均通过验证,才能判定该接口请求通过校验,此时即可为该接口请求配置相应的接口或对接方平台。
若在校验过程中,有一个校验规则未为通过,则判定该接口请求未通过校验,此时不必进行后续的校验规则的校验,整个校验过程中止,后续只需返回该校验规则相关的错误信息与错误编码,供工作人员经人工检测。通过这种设置可以进一步减少验证工序,提高验证工作效率。
通过上述技术方案的表述可知,本发明提供的基于配置中心的接口校验方法,通过提出接口参数配置化校验能有助于将接口里的参数校验与常规的业务逻辑之间实现解耦,参数校验的代码不再与常规业务的代码混在一起;开发者不再过多地编写校验代码,而是更加专注于业务逻辑的编写,减少了不必要的人力成本消耗;每个自定义检验实现类,只专注实现某一个校验规则,将个别的案例参数化,这样能够让这个校验类支持更多的业务场景,并且整个类的代码更加的清晰精简,减少类似的校验类的重复编写;接口参数校验的相关配置都是放在预设配置中心,相比于传统的代码校验,有着实时更新配置立马生效的好处,校验规则的更改无需重启应用系统。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
实施例2
与上述方法相对应,本申请还提供一种基于配置中心的接口校验系统,该系统包括:
参数配置单元,用于对本地系统内的各接口的参数校验数据进行参数配置,以生成相应的校验规则;
数据存储单元,用于将所述参数校验数据及其相应的校验规则移存入预设配置中心,以使所述参数校验数据与本地系统内的业务数据之间解耦;
查询单元,用于通过实时接口请求的请求参数对所述预设配置中心进行查询,以获取与所述实时接口请求相对应的接口校验数据的校验规则,记为待校验规则;
校验单元,用于通过所述待校验规则对所述实时接口请求的请求参数进行参数校验。
实施例3
本发明还提供一种电子装置70。参照图2所示,该图为本发明提供的电子装置70的较佳实施例结构示意图。
在本实施例中,电子装置70可以是服务器、智能手机、平板电脑、便携计算机、桌上型计算机等具有运算功能的终端设备。
该电子装置70包括:处理器71以及存储器72。
存储器72包括至少一种类型的可读存储介质。至少一种类型的可读存储介质可为如闪存、硬盘、多媒体卡、卡型存储器等的非易失性存储介质。在一些实施例中,可读存储介质可以是该电子装置70的内部存储单元,例如该电子装置70的硬盘。在另一些实施例中,可读存储介质也可以是电子装置1的外部存储器,例如电子装置70上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。
在本实施例中,存储器72的可读存储介质通常用于存储安装于电子装置70的基于配置中心的接口校验程序73。存储器72还可以用于暂时地存储已经输出或者将要输出的数据。
处理器72在一些实施例中可以是一中央处理器(Central Processing Unit,CPU),微处理器或其他数据处理芯片,用于运行存储器72中存储的程序代码或处理数据,例如基于配置中心的接口校验程序73等。
在一些实施例中,电子装置70为智能手机、平板电脑、便携计算机等的终端设备。在其他实施例中,电子装置70可以为服务器。
图2仅示出了具有组件71-73的电子装置70,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。
可选地,该电子装置70还可以包括用户接口,用户接口可以包括输入单元比如键盘(Keyboard)、语音输入装置比如麦克风(microphone)等具有语音识别功能的设备、语音输出装置比如音响、耳机等,可选地用户接口还可以包括标准的有线接口、无线接口。
可选地,该电子装置70还可以包括显示器,显示器也可以称为显示屏或显示单元。在一些实施例中可以是LED显示器、液晶显示器、触控式液晶显示器以及有机发光二极管(Organic Light-Emitting Diode,OLED)触摸器等。显示器用于显示在电子装置70中处理的信息以及用于显示可视化的用户界面。
可选地,该电子装置70还可以包括触摸传感器。触摸传感器所提供的供用户进行触摸操作的区域称为触控区域。此外,这里的触摸传感器可以为电阻式触摸传感器、电容式触摸传感器等。而且,触摸传感器不仅包括接触式的触摸传感器,也可包括接近式的触摸传感器等。此外,触摸传感器可以为单个传感器,也可以为例如阵列布置的多个传感器。
此外,该电子装置70的显示器的面积可以与触摸传感器的面积相同,也可以不同。可选地,将显示器与触摸传感器层叠设置,以形成触摸显示屏。该装置基于触摸显示屏侦测用户触发的触控操作。
可选地,该电子装置70还可以包括射频(Radio Frequency,RF)电路,传感器、音频电路等等,在此不再赘述。
在图2所示的装置实施例中,作为一种计算机存储介质的存储器72中可以包括操作系统、以及基于配置中心的接口校验程序73;处理器71执行存储器72中存储的基于配置中心的接口校验程序73时实现如下步骤:
对本地系统内的各接口的参数校验数据进行参数配置,以生成相应的校验规则;
将所述参数校验数据及其相应的校验规则移存入预设配置中心,以使所述参数校验数据与本地系统内的业务数据之间解耦;
通过实时接口请求的请求参数对所述预设配置中心进行查询,以获取与所述实时接口请求相对应的接口校验数据的校验规则,记为待校验规则;
通过所述待校验规则对所述实时接口请求的请求参数进行参数校验。
在该实施例中,图3为根据本发明实施例的基于配置中心的接口校验程序的内部逻辑示意图,如图3所示,基于配置中心的接口校验程序73还可以被分割为一个或者多个模块,一个或者多个模块被存储于存储器72中,并由处理器71执行,以完成本发明。本发明所称的模块是指能够完成特定功能的一系列计算机程序指令段。参照图3所示,为图2中基于配置中心的接口校验程序73较佳实施例的程序模块图。基于配置中心的接口校验程序73可以被分割为:参数配置模块74、数据存储模块75、查询模块76以及校验模块77。模块74-77所实现的功能或操作步骤均与上文类似,此处不再详述,示例性地,例如,其中:
参数配置模块74,用于对本地系统内的各接口的参数校验数据进行参数配置,以生成相应的校验规则;
数据存储模块75,用于将所述参数校验数据及其相应的校验规则移存入预设配置中心,以使所述参数校验数据与本地系统内的业务数据之间解耦;
查询模块76,用于通过实时接口请求的请求参数对所述预设配置中心进行查询,以获取与所述实时接口请求相对应的接口校验数据的校验规则,记为待校验规则;
校验模块77,用于通过所述待校验规则对所述实时接口请求的请求参数进行参数校验。
实施例4
本发明还提供一种计算机可读存储介质,计算机可读存储介质中存储有基于配置中心的接口校验程序73,基于配置中心的接口校验程序73被处理器执行时实现如下操作:
对本地系统内的各接口的参数校验数据进行参数配置,以生成相应的校验规则;
将所述参数校验数据及其相应的校验规则移存入预设配置中心,以使所述参数校验数据与本地系统内的业务数据之间解耦;
通过实时接口请求的请求参数对所述预设配置中心进行查询,以获取与所述实时接口请求相对应的接口校验数据的校验规则,记为待校验规则;
通过所述待校验规则对所述实时接口请求的请求参数进行参数校验。
本发明提供的计算机可读存储介质的具体实施方式与上述基于配置中心的接口校验方法、电子装置的具体实施方式大致相同,在此不再赘述。
需要说明的是,本发明所指区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层等。
需要进一步说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、装置、物品或者方法不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、装置、物品或者方法所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、装置、物品或者方法中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例的方法。
以上仅为本发明的可选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (10)

1.一种基于配置中心的接口校验方法,应用于电子装置,其特征在于,所述方法包括:
对本地系统内的各接口的参数校验数据进行参数配置,以生成相应的校验规则;
将所述参数校验数据及其相应的校验规则移存入预设配置中心,以使所述参数校验数据与本地系统内的业务数据之间解耦;
通过实时接口请求的请求参数对所述预设配置中心进行查询,以获取与所述实时接口请求相对应的接口校验数据的校验规则,记为待校验规则;
通过所述待校验规则对所述实时接口请求的请求参数进行参数校验。
2.根据权利要求1所述的基于配置中心的接口校验方法,其特征在于,所述参数校验数据包括接口信息、对接方信息以及字段信息,所述校验规则包括编码校验规则、对接方编码校验规则以及字段格式校验规则;并且,所述对本地系统内的各接口的参数校验数据进行参数配置,以生成相应的校验规则包括:
为所述接口信息、所述对接方信息以及所述字段信息分别配置相应的接口编码、对接方编码以及字段格式;
通过所述接口编码、所述对接方编码以及所述字段格式生成相应的编码校验规则、对接方编码校验规则以及字段格式校验规则。
3.根据权利要求2所述的基于配置中心的接口校验方法,其特征在于,将所述参数校验数据及其相应的校验规则以XML格式文件的形式存入所述预设配置中心;其中,在所述XML格式文件内预设有元素节点,各元素节点均预设有相应的属性节点;并且,
所述元素节点用于存储所述参数校验数据,所述属性节点用于存储与所述参数校验数据对应的校验规则。
4.根据权利要求3所述的基于配置中心的接口校验方法,其特征在于,将所述参数校验数据及其相应的校验规则以XML格式文件的形式存入所述预设配置中心的过程包括:
解析出所述预设配置中心中的XML格式文件的元素节点和属性节点;
为各校验规则分别配置相应的元素节点,并以与各校验规则对应的接口编码和对接方编码的编码组合作为所述元素节点的键值;
将各参数校验数据存入相应的所述元素节点内,并将与所述参数校验数据对应的校验规则存入相应的属性节点内。
5.根据权利要求4所述的基于配置中心的接口校验方法,其特征在于,本地系统内的各接口均配置有相应的实现类,所述参数校验数据还包括与所述实现类相对应的实现类信息并且,所述对本地系统内的各接口的参数校验数据进行参数配置,以生成相应的校验规则还包括;
为所述实现类信息配置相对应的实现类格式;
通过所述实现类格式生成相应的自定义校验规则。
6.根据权利要求4所述的基于配置中心的接口校验方法,其特征在于,通过实时接口请求的请求参数对所述预设配置中心进行查询,以获取与所述实时接口请求相对应的接口校验数据的校验规则,记为待校验规则的过程包括:
对所述实时接口请求的请求参数进行解析以获取所述请求参数中请求接口编码、请求对接方编码以及请求字段数据;
通过所述请求接口编码和所述请求对接方编码的编码组合对所述预设配置中心中的XML格式文件的键值列表进行查询,以获取与所述请求接口编码和所述请求对接方编码的编码组合对应的键值;
通过所述键值确定相应的元素节点;
获取与所述键值相应的元素节点的属性节点内的校验规则,记为所述待校验规则。
7.根据权利要求6所述的基于配置中心的接口校验方法,其特征在于,通过所述待校验规则对所述实时接口请求的请求参数进行参数校验的过程包括:
依次执行所述待校验规则,对所述实时接口请求的请求参数进行参数校验;并且,
若所述请求参数通过所有的待校验规则的校验,则判定所述请求参数合法;若所述请求参数未通过所有的待校验规则的校验,则判定所述请求参数不合法。
8.一种基于配置中心的接口校验系统,其特征在于,所述系统包括:
参数配置单元,用于对本地系统内的各接口的参数校验数据进行参数配置,以生成相应的校验规则;
数据存储单元,用于将所述参数校验数据及其相应的校验规则移存入预设配置中心,以使所述参数校验数据与本地系统内的业务数据之间解耦;
查询单元,用于通过实时接口请求的请求参数对所述预设配置中心进行查询,以获取与所述实时接口请求相对应的接口校验数据的校验规则,记为待校验规则;
校验单元,用于通过所述待校验规则对所述实时接口请求的请求参数进行参数校验。
9.一种电子装置,其特征在于,所述电子装置包括:存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的基于配置中心的接口校验程序,所述基于配置中心的接口校验程序被所述处理器执行时实现如下步骤:
对本地系统内的各接口的参数校验数据进行参数配置,以生成相应的校验规则;
将所述参数校验数据及其相应的校验规则移存入预设配置中心,以使所述参数校验数据与本地系统内的业务数据之间解耦;
通过实时接口请求的请求参数对所述预设配置中心进行查询,以获取与所述实时接口请求相对应的接口校验数据的校验规则,记为待校验规则;
通过所述待校验规则对所述实时接口请求的请求参数进行参数校验。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有基于配置中心的接口校验程序,所述基于配置中心的接口校验程序被处理器执行时,实现如权利要求1至7中任一项所述的基于配置中心的接口校验方法的步骤。
CN202011355685.3A 2020-11-27 2020-11-27 基于配置中心的接口校验方法、系统及装置及存储介质 Pending CN112416784A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011355685.3A CN112416784A (zh) 2020-11-27 2020-11-27 基于配置中心的接口校验方法、系统及装置及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011355685.3A CN112416784A (zh) 2020-11-27 2020-11-27 基于配置中心的接口校验方法、系统及装置及存储介质

Publications (1)

Publication Number Publication Date
CN112416784A true CN112416784A (zh) 2021-02-26

Family

ID=74843360

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011355685.3A Pending CN112416784A (zh) 2020-11-27 2020-11-27 基于配置中心的接口校验方法、系统及装置及存储介质

Country Status (1)

Country Link
CN (1) CN112416784A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113608913A (zh) * 2021-08-05 2021-11-05 上海微盟企业发展有限公司 参数校验方法、系统、装置及存储介质
CN115145587A (zh) * 2022-07-22 2022-10-04 中国农业银行股份有限公司 一种产品参数校验方法、装置、电子设备及存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130332473A1 (en) * 2012-06-12 2013-12-12 International Business Machines Corporation Database query language gateway
CN103544074A (zh) * 2012-07-09 2014-01-29 阿里巴巴集团控股有限公司 一种业务的校验方法及装置
CN109344642A (zh) * 2018-08-31 2019-02-15 平安科技(深圳)有限公司 接口规则校验方法、装置、计算机设备及存储介质
WO2019035903A1 (en) * 2017-08-16 2019-02-21 Walmart Apollo, Llc SYSTEMS AND METHODS FOR VALIDATION OF DISTRIBUTED DATA
CN110389765A (zh) * 2019-07-24 2019-10-29 深圳市盟天科技有限公司 一种参数校验方法和参数校验系统
CN110633160A (zh) * 2019-08-22 2019-12-31 浙江大搜车软件技术有限公司 接口调用方法、装置、计算机设备和存储介质

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130332473A1 (en) * 2012-06-12 2013-12-12 International Business Machines Corporation Database query language gateway
CN103544074A (zh) * 2012-07-09 2014-01-29 阿里巴巴集团控股有限公司 一种业务的校验方法及装置
WO2019035903A1 (en) * 2017-08-16 2019-02-21 Walmart Apollo, Llc SYSTEMS AND METHODS FOR VALIDATION OF DISTRIBUTED DATA
CN109344642A (zh) * 2018-08-31 2019-02-15 平安科技(深圳)有限公司 接口规则校验方法、装置、计算机设备及存储介质
CN110389765A (zh) * 2019-07-24 2019-10-29 深圳市盟天科技有限公司 一种参数校验方法和参数校验系统
CN110633160A (zh) * 2019-08-22 2019-12-31 浙江大搜车软件技术有限公司 接口调用方法、装置、计算机设备和存储介质

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113608913A (zh) * 2021-08-05 2021-11-05 上海微盟企业发展有限公司 参数校验方法、系统、装置及存储介质
CN115145587A (zh) * 2022-07-22 2022-10-04 中国农业银行股份有限公司 一种产品参数校验方法、装置、电子设备及存储介质

Similar Documents

Publication Publication Date Title
CN111352902B (zh) 日志处理方法、装置、终端设备及存储介质
CN107967135B (zh) 计算引擎实现方法、电子装置及存储介质
CN110601880B (zh) 一种云平台、业务处理方法、命令接口及计算机设备
CN110532107B (zh) 接口调用方法、装置、计算机设备及存储介质
CN111538651B (zh) 接口测试方法、装置、服务器及存储介质
CN106775937A (zh) 一种命令行校验方法及装置
US12135708B2 (en) Systems and methods for maintaining data quality in a data store receiving both low and high quality data
WO2021151347A1 (zh) 基于iOS应用的加固方法、装置、设备及存储介质
CN111142863B (zh) 一种页面生成的方法及装置
CN114238948A (zh) 一种应用程序检测方法、装置、电子设备及存储介质
CN113434542B (zh) 数据关系识别方法、装置、电子设备及存储介质
CN112416784A (zh) 基于配置中心的接口校验方法、系统及装置及存储介质
CN114548059A (zh) 一种结构化数据的管理方法、装置、存储介质及电子设备
CN117493309A (zh) 一种标准模型生成方法、装置、设备及存储介质
CN111324645B (zh) 区块链的数据处理方法及装置
CN111639903A (zh) 一种针对架构变更的评审处理方法及相关设备
CN112733510A (zh) 一种财务凭证生成方法、装置、设备及计算机可读存储介质
CN111859452A (zh) 页面信息校验方法、装置、设备及计算机可读存储介质
US20200097458A1 (en) Metadata validation tool
CN111857883A (zh) 页面数据校验方法、装置、电子设备及存储介质
CN114816772B (zh) 基于兼容层运行的应用的排错方法、排错系统及计算设备
CN114265633B (zh) 自助设备的应用参数配置、查询方法、设备和存储介质
CN114282187A (zh) 登录访问控制方法及装置
CN112685304A (zh) 前端信息规范校验方法、系统、装置及存储介质
CN112651825A (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
WD01 Invention patent application deemed withdrawn after publication
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20210226