CN114461302A - 参数校验方法、校验模板的生成方法及存储介质 - Google Patents
参数校验方法、校验模板的生成方法及存储介质 Download PDFInfo
- Publication number
- CN114461302A CN114461302A CN202210121664.8A CN202210121664A CN114461302A CN 114461302 A CN114461302 A CN 114461302A CN 202210121664 A CN202210121664 A CN 202210121664A CN 114461302 A CN114461302 A CN 114461302A
- Authority
- CN
- China
- Prior art keywords
- verification
- parameter
- template
- configuration information
- determining
- 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
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/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44505—Configuring for program initiating, e.g. using registry, configuration files
-
- 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/451—Execution arrangements for user interfaces
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0813—Configuration setting characterised by the conditions triggering a change of settings
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0823—Configuration setting characterised by the purposes of a change of settings, e.g. optimising configuration for enhancing reliability
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/084—Configuration by using pre-existing information, e.g. using templates or copying from other elements
- H04L41/0843—Configuration by using pre-existing information, e.g. using templates or copying from other elements based on generic templates
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0866—Checking the configuration
Abstract
本公开实施例公开了一种参数校验方法及装置、校验模板的生成方法及装置、计算机可读存储介质、计算机程序产品及电子设备,其中,该方法包括:从预设的参数校验接口接收输入的参数;确定参数对应的参数值;基于参数,提取预先配置的用于校验参数值的校验模板;确定校验模板包括的用于对参数值进行校验的参数校验配置信息;基于参数校验配置信息,对参数值进行校验,得到校验结果。本公开实施例可以大大缩短校验方法的开发周期,提高参数校验的效率。同时,基于配置校验模板的方式进行参数校验,无需在校验规则变化时重启系统,只需获取更新的校验模板和参数校验配置信息即可,实现了校验配置的热启动,减少了系统重启可能带来的隐患。
Description
技术领域
本公开涉及计算机技术领域,尤其是一种参数校验方法及装置、校验模板的生成方法及装置、计算机可读存储介质、计算机程序产品及电子设备。
背景技术
随着网络信息技术的发展,互联网应用程序的使用范围越来越广,同时,互联网应用程序接收的业务数据也越来越多,为了应用程序正常运行,需要对接口的参数进行校验。
目前的参数校验方案主要包括以下三种:
方案一,采用硬编码的方式进行校验。该方案灵活性、适用性强,没有实现不了的参数校验。
方案二,采用JSR303规范来进行参数格式校验。该方案采用注解的方式进行校验,具备一定的灵活性,可读性强,易于理解。相对硬编码的方式而言,代码复用率高,但灵活性稍弱。
方案三,基于JsonSchema的方式进行校验。该方案使用配置的方式进行参数校验,灵活性高,对业务代码没有侵入;可以描述现有数据格式;提供清晰的仍和机器的可读文档;完整的数据结构,有利于自动化测试。
上述三种参数校验方法,主要存在以下缺陷:
采用硬编码的方式进行校验的方案,需要针对每个需求编写不同的逻辑,代码复用率低。
采用JSR303规范来进行参数格式校验的方案,需要一定程度的硬编码才能实现,针对不同需求需要编写不同的验证代码来实现;针对超出JSR303规范的校验需求,需要开发人员自己去实现。
基于JsonSchema的方式进行校验的方案,需要对每个需求编写校验规则,规则配置的复用率低;对于复杂数据格式的参数不能完美校验,仍需要额外编写代码进行补充校验;对于非开发人员,难以实现对参数校验逻辑的配置,且在使用系统的过程中,无法展示人性化的校验错误信息,需要开发人员频繁介入帮忙查找问题,导致效率降低。
发明内容
本公开的实施例提供了一种参数校验方法及装置、校验模板的生成方法及装置、计算机可读存储介质、计算机程序产品及电子设备。
本公开的实施例提供了一种参数校验方法,该方法包括:从预设的参数校验接口接收输入的参数;确定参数对应的参数值;基于参数,提取预先配置的用于校验参数值的校验模板;确定校验模板包括的用于对参数值进行校验的参数校验配置信息;基于参数校验配置信息,对参数值进行校验,得到校验结果。
在一些实施例中,确定校验模板包括的用于对参数值进行校验的参数校验配置信息,包括:确定校验模板是否为子模板;若校验模板是子模板,将子模板包括的第一参数校验配置信息和子模板的父模板包括的第二参数校验配置信息确定为校验模板包括的参数校验配置信息;若校验模板不是子模板,将校验模板包括的参数校验配置信息确定为用于对参数进行校验的参数校验配置信息。
在一些实施例中,确定校验模板包括的用于对参数值进行校验的参数校验配置信息,包括:基于参数,从校验模板包括的至少两个校验组中确定目标校验组;基于目标校验组包括的参数校验配置信息,确定用于对参数进行校验的参数校验配置信息。
在一些实施例中,基于目标校验组包括的参数校验配置信息,确定用于对参数值进行校验的参数校验配置信息,包括:响应于确定目标校验组为子校验组,将子校验组包括的参数校验配置信息和子校验组的父校验组包括的参数校验配置信息确定为用于对参数值进行校验的参数校验配置信息;响应于确定目标校验组不为子校验组,将目标校验组的参数校验配置信息确定为用于对参数值进行校验的参数校验配置信息。
在一些实施例中,确定参数对应的参数值,包括:确定参数的类型;从类型对应的参数路径提取参数的参数值;和/或,在基于参数校验配置信息,对参数值进行校验,得到校验结果之后,该方法还包括:响应于确定校验结果为表示校验失败的信息,确定校验模板是否具有对应的错误信息模板;若具有,基于错误信息模板,生成并输出校验错误提示信息;若不具有,基于预设的通用错误信息模板,生成并输出校验错误提示信息。
在一些实施例中,确定校验模板包括的用于对参数值进行校验的参数校验配置信息,包括:确定本地缓存中是否存在预先缓存的用于对参数值进行校验的参数校验配置信息;若存在,从本地缓存中提取校验模板包括的用于对参数进行校验的参数校验配置信息。
在一些实施例中,该方法还包括:响应于接收到由预设的发布订阅系统发送的更新后的参数校验配置信息,将参数校验配置信息存储到本地缓存中。
根据本公开实施例的另一个方面,提供了一种校验模板的生成方法,该方法包括:获取用户通过可视化的参数校验配置界面输入的校验模板配置信息;基于校验模板配置信息,建立初始校验模板;获取用户通过参数校验配置界面输入的与初始校验模板对应的参数校验配置信息;将参数校验配置信息加入初始校验模板,得到用于进行参数校验的校验模板。
根据本公开实施例的另一个方面,提供了一种参数校验装置,该装置包括:接收模块,用于从预设的参数校验接口接收输入的参数;第一确定模块,用于确定参数对应的参数值;提取模块,用于基于参数,提取预先配置的用于校验参数值的校验模板;第二确定模块,用于确定校验模板包括的用于对参数值进行校验的参数校验配置信息;校验模块,用于基于参数校验配置信息,对参数值进行校验,得到校验结果。
在一些实施例中,第二确定模块包括:第一确定单元,用于确定校验模板是否为子模板;第二确定单元,用于若校验模板是子模板,将子模板包括的第一参数校验配置信息和子模板的父模板包括的第二参数校验配置信息确定为校验模板包括的参数校验配置信息;第三确定单元,用于若校验模板不是子模板,将校验模板包括的参数校验配置信息确定为用于对参数进行校验的参数校验配置信息。
在一些实施例中,第二确定模块包括:第四确定单元,用于基于参数,从校验模板包括的至少两个校验组中确定目标校验组;第五确定单元,用于基于目标校验组包括的参数校验配置信息,确定用于对参数进行校验的参数校验配置信息。
在一些实施例中,第五确定单元进一步用于:响应于确定目标校验组为子校验组,将子校验组包括的参数校验配置信息和子校验组的父校验组包括的参数校验配置信息确定为用于对参数值进行校验的参数校验配置信息;响应于确定目标校验组不为子校验组,将目标校验组的参数校验配置信息确定为用于对参数值进行校验的参数校验配置信息。
在一些实施例中,第一确定模块包括:第六确定单元,用于确定参数的类型;第一提取单元,用于从类型对应的参数路径提取参数的参数值;和/或,该装置还包括:第三确定模块,用于响应于确定校验结果为表示校验失败的信息,确定校验模板是否具有对应的错误信息模板;第一输出模块,用于若具有,基于错误信息模板,生成并输出校验错误提示信息;第二输出模块,用于若不具有,基于预设的通用错误信息模板,生成并输出校验错误提示信息。
在一些实施例中,第二确定模块包括:第七确定单元,用于确定本地缓存中是否存在预先缓存的用于对参数值进行校验的参数校验配置信息;第二提取单元,用于若存在,从本地缓存中提取校验模板包括的用于对参数进行校验的参数校验配置信息。
在一些实施例中,该装置还包括:更新模块,用于响应于接收到由预设的发布订阅系统发送的更新后的参数校验配置信息,将参数校验配置信息存储到本地缓存中。
根据本公开实施例的另一个方面,提供了一种校验模板的生成装置,该装置包括:第一获取模块,用于获取用户通过可视化的参数校验配置界面输入的校验模板配置信息;建立模块,用于基于校验模板配置信息,建立初始校验模板;第二获取模块,用于获取用户通过参数校验配置界面输入的与初始校验模板对应的参数校验配置信息;生成模块,用于将参数校验配置信息加入初始校验模板,得到用于进行参数校验的校验模板。
根据本公开实施例的另一个方面,提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,计算机程序用于执行上述参数校验方法或校验模板的生成方法。
根据本公开实施例的另一个方面,提供了一种电子设备,电子设备包括:处理器;用于存储处理器可执行指令的存储器;处理器,用于从存储器中读取可执行指令,并执行指令以实现上述参数校验方法或校验模板的生成方法。
根据本公开实施例的另一个方面,提供了一种计算机程序产品,包括计算机程序/指令,计算机程序/指令被处理器执行时实现上述参数校验方法或校验模板的生成方法的步骤。
基于本公开上述实施例提供的参数校验方法及装置、校验模板的生成方法及装置、计算机可读存储介质、计算机程序产品及电子设备,通过从参数校验接口接收输入的参数并确定参数对应的参数值,然后提取预先配置的用于校验参数的校验模板;再确定校验模板包括的参数校验配置信息,最后基于参数校验配置信息,对参数值进行校验,得到校验结果,从而实现了使用配置校验模板的方式进行参数校验,可以对各种配置进行集中管理,相比于现有技术,本公开实施例采用的基于配置校验模板的方式进行参数校验,可以大大缩短校验方法的开发周期,提高参数校验的效率。同时,基于配置校验模板的方式进行参数校验,无需在校验规则变化时重启系统,只需获取更新的校验模板和参数校验配置信息即可,实现了校验配置的热启动,减少了系统重启可能带来的隐患。在生成校验模板时,通过可视化的校验配置界面进行校验模板的配置,从而大大提高了用户进行校验配置的便利性,解决了现有技术没有可视化的配置管理界面,对开发人员不友好,非开发人员无法介入配置变更,导致配置效率低的问题。此外,校验模板的生成方法可以由不同于参数校验方法的执行主体执行,从而可以将配置好的校验模板部署到多个参数校验设备中,有助于实现校验模板的集群式部署,提高参数校验的效率。
下面通过附图和实施例,对本公开的技术方案做进一步的详细描述。
附图说明
通过结合附图对本公开实施例进行更详细的描述,本公开的上述以及其他目的、特征和优势将变得更加明显。附图用来提供对本公开实施例的进一步理解,并且构成说明书的一部分,与本公开实施例一起用于解释本公开,并不构成对本公开的限制。在附图中,相同的参考标号通常代表相同部件或步骤。
图1是本公开所适用的系统图。
图2是本公开一示例性实施例提供的参数校验方法的流程示意图。
图3是本公开另一示例性实施例提供的参数校验方法的流程示意图。
图4是本公开另一示例性实施例提供的参数校验方法的流程示意图。
图5是本公开另一示例性实施例提供的参数校验方法的流程示意图。
图6是本公开一示例性实施例提供的校验模板的生成方法的流程示意图。
图7是本公开一示例性实施例提供的参数校验装置的结构示意图。
图8是本公开另一示例性实施例提供的参数校验装置的结构示意图。
图9是本公开一示例性实施例提供的校验模板的生成装置的结构示意图。
图10是本公开一示例性实施例提供的电子设备的结构图。
具体实施方式
下面,将参考附图详细地描述根据本公开的示例实施例。显然,所描述的实施例仅仅是本公开的一部分实施例,而不是本公开的全部实施例,应理解,本公开不受这里描述的示例实施例的限制。
应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本公开的范围。
本领域技术人员可以理解,本公开实施例中的“第一”、“第二”等术语仅用于区别不同步骤、设备或模块等,既不代表任何特定技术含义,也不表示它们之间的必然逻辑顺序。
还应理解,在本公开实施例中,“多个”可以指两个或两个以上,“至少一个”可以指一个、两个或两个以上。
还应理解,对于本公开实施例中提及的任一部件、数据或结构,在没有明确限定或者在前后文给出相反启示的情况下,一般可以理解为一个或多个。
另外,本公开中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本公开中字符“/”,一般表示前后关联对象是一种“或”的关系。
还应理解,本公开对各个实施例的描述着重强调各个实施例之间的不同之处,其相同或相似之处可以相互参考,为了简洁,不再一一赘述。
同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。
以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本公开及其应用或使用的任何限制。
对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为说明书的一部分。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
本公开实施例可以应用于终端设备、计算机系统、服务器等电子设备,其可与众多其它通用或专用计算系统环境或配置一起操作。适于与终端设备、计算机系统、服务器等电子设备一起使用的众所周知的终端设备、计算系统、环境和/或配置的例子包括但不限于:个人计算机系统、服务器计算机系统、瘦客户机、厚客户机、手持或膝上设备、基于微处理器的系统、机顶盒、可编程消费电子产品、网络个人电脑、小型计算机系统、大型计算机系统和包括上述任何系统的分布式云计算技术环境,等等。
终端设备、计算机系统、服务器等电子设备可以在由计算机系统执行的计算机系统可执行指令(诸如程序模块)的一般语境下描述。通常,程序模块可以包括例程、程序、目标程序、组件、逻辑、数据结构等等,它们执行特定的任务或者实现特定的抽象数据类型。计算机系统/服务器可以在分布式云计算环境中实施,分布式云计算环境中,任务是由通过通信网络链接的远程处理设备执行的。在分布式云计算环境中,程序模块可以位于包括存储设备的本地或远程计算系统存储介质上。
申请概述
现有的参数校验方法,主要存在以下缺陷:
采用硬编码的方式进行校验的方案,需要针对每个需求编写不同的逻辑,代码复用率低。
采用JSR303规范来进行参数格式校验的方案,需要一定程度的硬编码才能实现,针对不同需求需要编写不同的验证代码来实现;针对超出JSR303规范的校验需求,需要开发人员自己去实现。
基于JsonSchema的方式进行校验的方案,需要对每个需求编写校验规则,规则配置的复用率低;对于复杂数据格式的参数不能完美校验,仍需要额外编写代码进行补充校验;对于非开发人员,难以实现对参数校验逻辑的配置,且在使用系统的过程中,无法展示人性化的校验错误信息,需要开发人员频繁介入帮忙查找问题,导致效率降低。
本方案旨在解决上述问题,提出了基于配置校验模板的方式进行参数校验,以提高参数校验的效率,降低配置校验规则的难度。
示例性系统
图1示出了可以应用本公开的实施例的参数校验方法或参数校验装置,以及校验模板的生成方法或校验模板的生成装置的示例性系统架构100。
如图1所示,系统架构100可以包括终端设备101,网络102和服务器103。网络102用于在终端设备101和服务器103之间提供通信链路的介质。网络102可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用终端设备101通过网络102与服务器103交互,以接收或发送消息等。终端设备101上可以安装有各种通讯客户端应用,例如搜索类应用、网页浏览器应用、购物类应用、即时通信工具等。
终端设备101可以是各种电子设备,包括但不限于诸如移动电话、笔记本电脑、数字广播接收器、PDA(个人数字助理)、PAD(平板电脑)、PMP(便携式多媒体播放器)、车载终端(例如车载导航终端)等等的移动终端以及诸如数字TV、台式计算机等等的固定终端。
服务器103可以是提供各种服务的服务器,例如对终端设备101上传的参数进行校验的后台参数校验服务器。后台参数校验服务器可以利用校验模板对接收到的参数进行校验,得到校验结果。
需要说明的是,本公开的实施例所提供的参数校验方法可以由服务器103执行,也可以由终端设备101执行,相应地,参数校验方法装置可以设置于服务器103中,也可以设置于终端设备101中。此外,本公开的实施例所提供的校验模板的生成方法可以由服务器103执行,也可以由终端设备101执行,相应地,校验模板的生成装置可以设置于服务器103中,也可以设置于终端设备101中。
应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。例如,服务器103可以是由多个服务器组成的服务器集群,其中包括用于进行校验模板配置(即执行上述校验模板的生成方法)的校验配置服务器1031,还包括用于进行参数校验(即执行上述参数校验方法)的参数校验服务器1032。
示例性方法
图2是本公开一示例性实施例提供的参数校验方法的流程示意图。本实施例可应用在电子设备(如图1所示的终端设备101或参数校验服务器1032)上,如图2所示,该方法包括如下步骤:
步骤201,从预设的参数校验接口接收输入的参数。
在本实施例中,电子设备可以从预设的参数校验接口接收输入的参数。其中,参数校验接口可以是用于调用参数校验功能的接口。通常,参数校验接口可以设置在参数校验组件中,在进行参数校验时,参数校验组件可以通过参数校验接口将待校验的参数传入执行该参数校验方法的软件或硬件中。
上述参数可以是各种应用程序中使用的各种类型的参数,例如,包括但不限于:日期、数字、数据长度、枚举型数据、手机号码、身份证号、邮箱地址、IP地址、网页链接、银行卡号、统一社会信用码等。
通常,电子设备可以通过JsonPath的方式读取输入的参数。其中,JsonPath是一种信息抽取类库,是从JSON文档中抽取指定信息的工具,提供多种语言实现版本,包括:Javascript,Python,PHP,Java等。
步骤202,确定参数对应的参数值。
在本实施例中,电子设备可以确定参数对应的参数值。参数值可以为各种类型的数据,例如数字、字符、字符串等。作为示例,步骤201中接收的参数中可以包括参数类型和参数值,电子设备可以直接读取这些参数值。
步骤203,基于参数,提取预先配置的用于校验参数值的校验模板。
在本实施例中,电子设备可以基于参数,提取预先配置的用于校验参数值的校验模板。其中,校验模板可以是预先配置的一系列校验规则的集合。通常,接收的参数中可以包括模板的标识,根据该标识,电子设备可以从本地或从远程提取相应的校验模板。
步骤204,确定校验模板包括的用于对参数值进行校验的参数校验配置信息。
在本实施例中,电子设备可以确定校验模板包括的用于对参数值进行校验的参数校验配置信息。其中,校验配置信息可以是预先在该校验模板中配置的信息,校验配置信息用于表示参数的相应校验规则。作为示例,校验配置信息可以包括但不限于:校验规则名称、校验规则说明、规则属性信息、参数类型信息、表示某个参数是否为必填项的信息等。
步骤205,基于参数校验配置信息,对参数值进行校验,得到校验结果。
在本实施例中,电子设备可以基于参数校验配置信息,对参数值进行校验,得到校验结果。通常,校验配置信息包括的规则属性信息可以表示某个参数相应的校验规则。作为示例,假设某个参数名称为reason,其对应的参数类型信息为string,即字符串类型,对应的规则属性信息为“minLength:0,maxLength:255”,表示reason参数的参数值最长不能超过255。再例如,假设某个参数名称为soldTime,其对应的参数类型信息为string,即字符串类型,对应的规则属性信息为“pattern:yyyy-mm-dd hh:mm:ss”,表示soldTime参数的参数值的指定格式为yyyy-mm-dd hh:mm:ss。
校验结果可以表示针对某个参数的参数值的校验是否通过。校验结果的形式可以为任意形式,例如数字、文字、符号等。
可选的,上述参数可以具有父子结构,在进行校验时,可以从参数中首先确定父级参数,对父级参数的参数值进行校验。然后从参数中确定父级参数对应的子级参数,对子级参数的参数值依次进行校验。作为示例,参数中包括父级参数rebate(退税),其对应的子级参数包括:expenseItem(费用项目)、expenseType(费用类型)、rebatePlanId(费用计划编号)、expenseItemAmount(费用项目金额)等。电子设备首先对rebate参数的参数值进行校验,再依次对其下的子级参数的参数值校验。
本公开的上述实施例提供的方法,通过从参数校验接口接收输入的参数并确定参数对应的参数值,然后提取预先配置的用于校验参数的校验模板;再确定校验模板包括的参数校验配置信息,最后基于参数校验配置信息,对参数值进行校验,得到校验结果,从而实现了使用配置校验模板的方式进行参数校验,可以对各种配置进行集中管理,相比于现有技术,本公开实施例采用的基于配置校验模板的方式进行参数校验,可以大大缩短校验方法的开发周期,提高参数校验的效率。同时,基于配置校验模板的方式进行参数校验,无需在校验规则变化时重启系统,只需获取更新的校验模板和参数校验配置信息即可,实现了校验配置的热启动,减少了系统重启可能带来的隐患。
在一些可选的实现方式中,如图3所示,步骤204可以包括如下子步骤:
步骤2041,确定校验模板是否为子模板。
其中,子模板具有相应的父模板。父模板和子模板的对应关系是预先配置好的。通常,父模板和子模板具有继承关系,即子模板继承了父模板的参数校验配置信息。作为示例,当A、B两个模板里面有很多相似参数需要校验时,把相同的参数校验配置信息抽取成一个模板C,相同的部分,模板A、B就不需要再配置一遍了;此时模板C便成了父模板,模板A和B就成了子模板。
若校验模板是子模板,执行步骤2042,否则执行步骤2043。
步骤2042,将子模板包括的第一参数校验配置信息和子模板的父模板包括的第二参数校验配置信息确定为校验模板包括的参数校验配置信息。
可选的,若子模板包括的参数校验配置信息与父模板包括的参数校验配置信息有冲突,即子模板包括的部分参数校验配置信息与父模板包括的相对应的参数校验配置信息不同,则将子模板中相冲突的参数校验配置信息覆盖父模板中相对应的参数校验配置信息,使用覆盖后的参数校验配置信息进行参数校验。
步骤2043,将校验模板包括的参数校验配置信息确定为用于对参数值进行校验的参数校验配置信息。
由于父模板和子模板具有继承关系,即子模板继承了父模板包括的参数校验配置信息,对于相似的参数校验场景,可以通过继承关系实现模板间的复用,有助于提高配置校验模板和对参数值进行校验的效率。
在一些可选的实现方式中,如图4所示,上述步骤204可以包括如下子步骤:
步骤2044,基于参数,从校验模板包括的至少两个校验组中确定目标校验组。
其中,校验组是指在校验模板中,根据不同的需求对参数校验配置信息进行的分组。不同的校验组对应的被校验的参数的数量、规则等不同。
通常,接收的参数中可以包括校验组的标识,根据该标识,电子设备可以从从校验模板包括的校验组中确定目标校验组。作为示例:标识为“-2”的校验组,可以同时校验8个参数;标识为“100”的校验组,只校验1个参数。
步骤2045,基于目标校验组包括的参数校验配置信息,确定用于对参数值进行校验的参数校验配置信息。
作为示例,可以将目标校验组包括的参数校验配置信息确定为对输入的参数的参数值进行校验的参数校验配置信息。
本实现方式通过预先对校验模板包括的参数校验配置信息进行分组,可以实现在对参数值进行校验时,根据不同组别进行校验,在进行分组时,可以将相似功能的校验规则划分到同一组中,从而有助于校验组的复用,提高参数校验的效率。
在一些可选的实现方式中,步骤2045可以如下执行:
响应于确定目标校验组为子校验组,将子校验组包括的参数校验配置信息和子校验组的父校验组包括的参数校验配置信息确定为用于对参数进行校验的参数校验配置信息。
响应于确定所述目标校验组不为子校验组,将所述目标校验组的参数校验配置信息确定为所述用于对所述参数值进行校验的参数校验配置信息
其中,与上述父模板和子模板的关系类似,子校验组具有相应的父校验组。父校验组和子校验组的对应关系是预先配置好的。通常,父校验组和子校验组具有继承关系,即子校验组继承了父校验组的参数校验配置信息。
可选的,若子校验组包括的参数校验配置信息与父校验组包括的参数校验配置信息有冲突,即子校验组包括的部分参数校验配置信息与父校验组包括的相对应的参数校验配置信息不同,则将子校验组中相冲突的参数校验配置信息覆盖父校验组中相对应的参数校验配置信息,使用覆盖后的参数校验配置信息进行参数校验。
本实现方式通过在校验模板中预先设置子校验组和父校验组,可以进一步最大化地实现参数校验配置信息的复用,有助于进一步提高配置校验模板和对参数值进行校验的效率。
在一些可选的实现方式中,电子设备可以按照如下方式确定参数对应的参数值:
首先,确定参数的类型。
作为示例,参数类型可以包括:订单编号、订单提交时间、订单完成时间等。电子设备可以直接从接收的参数中提取参数类型。
然后,从类型对应的参数路径提取参数的参数值。
参数路径用于表示存储参数值的存储区域的位置。通常,在通过JsonPath的方式读取输入的参数时,可以利用JsonPath的语法从参数路径提取参数值。作为示例,某个参数的参数类型为“soldTime”,则该参数对应的参数路径为“$.soldTime”。
通过从参数路径提取参数值,可以在重复使用某些参数时,无需重复传输参数值,提高了获得参数值的效率。
在一些可选的实现方式中,如图5所示,在步骤205之后,该方法还可以包括:
步骤206,响应于确定校验结果为表示校验失败的信息,确定校验模板是否具有对应的错误信息模板。
其中,错误信息模板是预先配置的,可以由用户自定义配置,错误信息模板中可以包括多个错误项,各个错误项可以分别与校验模板中的各个参数校验配置信息相对应。
若校验模板是否具有对应的错误信息模板,执行步骤206,否则执行步骤207。
步骤207,基于错误信息模板,生成并输出校验错误提示信息。
具体地,可以根据发生校验失败的参数对应的错误项,生成校验错误提示信息。作为示例,若参数为用户的身份证号,对该身份证号进行校验时确定格式错误,输出的校验错误提示信息可以为“身份证号格式错误”。
步骤208,基于预设的通用错误信息模板,生成并输出校验错误提示信息。
作为示例,通用错误信息模板可以为“xxx发生错误”。
本实现方式通过在发生校验失败的情况下利用错误信息模板输出错误提示信息,可以实现由针对性地提示用户当前发生校验失败的原因,提高用户修正输入错误的效率。
在一些可选的实现方式中,步骤204可以包括如下子步骤:
首先,确定本地缓存中是否存在预先缓存的用于对参数值进行校验的参数校验配置信息。
其中,上述本地缓存是预先在电子设备本地设置的用于缓存参数校验配置信息的存储区。作为示例,电子设备可以预先接收如图1所示的校验配置服务器1031发送的参数校验配置信息,并将接收的参数校验配置信息存储到上述本地缓存。
然后,若存在,从本地缓存中提取所述校验模板包括的用于对参数值进行校验的参数校验配置信息。
本实现方式通过预先将参数校验配置信息进行缓存,可以实现直接从本地提取参数校验配置信息,无需从远程获取,减少了网络资源的消耗,提高了参数校验的效率。
在一些可选的实现方式中,电子设备可以响应于接收到由预设的发布订阅系统发送的更新后的参数校验配置信息,将参数校验配置信息存储到本地缓存中。
其中,发布订阅系统(例如基于redis的发布订阅系统)用于在参数校验配置信息发送变动时,将更新后的参数校验配置信息推送到上述电子设备。作为示例,如图1所示的校验配置服务器1031为消息发布端,参数校验服务器1032为消息订阅端,校验配置服务器1031将配置好的参数校验配置信息同时推送到多个参数校验服务器1032。各个参数校验服务器1032基于接收的参数校验配置信息对缓存中存储的参数校验配置信息进行同步更新,从而使各个参数校验服务器1032中缓存的参数校验配置信息保持一致。
本实现方式通过接收由发布订阅系统发送的更新后的参数校验配置信息,可以实现在参数校验配置信息发生变动时,同步更新到本地缓存,从而在对参数校验方法进行集群部署时,实现缓存的一致性,避免参数校验配置信息缓存不一致或不及时导致的参数校验发生错误。
图6是本公开一示例性实施例提供的校验模板的生成方法的流程示意图。本实施例可应用在电子设备(如图1所示的终端设备101或校验配置服务器1031)上,如图6所示,该方法包括如下步骤:
步骤601,获取用户通过可视化的参数校验配置界面输入的校验模板配置信息。
在本实施例中,电子设备可以获取用户通过可视化的参数校验配置界面输入的校验模板配置信息。其中,参数校验配置界面可以是用户在前端操作的界面,通过该界面,用户可以自定义校验模板以及校验模板内的各种校验规则。校验模板配置信息包括但不限于:模板名称、模板编号、模板类型(例如父模板或子模板)等。
步骤602,基于校验模板配置信息,建立初始校验模板。
在本实施例中,电子设备可以基于校验模板配置信息,建立初始校验模板。通常,用户在输入上述校验模板配置信息后,通过点击按钮或输入命令等操作,可以建立初始校验模板。
步骤603,获取用户通过参数校验配置界面输入的与初始校验模板对应的参数校验配置信息。
在本实施例中,电子设备可以获取用户通过参数校验配置界面输入的与初始校验模板对应的参数校验配置信息。关于参数校验配置信息的含义,可以参考上述图2对应实施例中的相关描述,这里不再赘述。
步骤604,将参数校验配置信息加入初始校验模板,得到用于进行参数校验的校验模板。
在本实施例中,电子设备可以将参数校验配置信息加入初始校验模板,得到用于进行参数校验的校验模板。可选的,可以在校验模板中对参数校验配置信息进行分组,还可以设置校验组之间的继承关系。
通常,配置好的校验模板可以存储在数据库中,通过发布订阅系统,将数据库中的校验模板发送到用于执行上述图2对应实施例的多个电子设备中。
本公开的上述实施例提供的校验模板的生成方法,通过可视化的校验配置界面进行校验模板的配置,从而大大提高了用户进行校验配置的便利性,解决了现有技术没有可视化的配置管理界面,对开发人员不友好,非开发人员无法介入配置变更,导致配置效率低的问题。此外,校验模板的生成方法可以由不同于参数校验方法的执行主体执行,从而可以将配置好的校验模板部署到多个参数校验设备中,有助于实现校验模板的集群式部署,提高参数校验的效率。
示例性装置
图7是本公开一示例性实施例提供的参数校验装置的结构示意图。本实施例可应用在电子设备上,如图7所示,参数校验装置包括:接收模块701,用于从预设的参数校验接口接收输入的参数;第一确定模块702,用于确定参数对应的参数值;提取模块703,用于基于参数,提取预先配置的用于校验参数值的校验模板;第二确定模块704,用于确定校验模板包括的用于对参数值进行校验的参数校验配置信息;校验模块705,用于基于参数校验配置信息,对参数值进行校验,得到校验结果。
在本实施例中,接收模块701可以从预设的参数校验接口接收输入的参数。其中,参数校验接口可以是用于调用参数校验功能的接口。通常,参数校验接口可以设置在参数校验组件中,在进行参数校验时,参数校验组件可以通过参数校验接口将待校验的参数传入执行该参数校验方法的软件或硬件中。
上述参数可以是各种应用程序中使用的各种类型的参数,例如,包括但不限于:日期、数字、数据长度、枚举型数据、手机号码、身份证号、邮箱地址、IP地址、网页链接、银行卡号、统一社会信用码等。
通常,该装置可以通过JsonPath的方式读取输入的参数。其中,JsonPath是一种信息抽取类库,是从JSON文档中抽取指定信息的工具,提供多种语言实现版本,包括:Javascript,Python,PHP,Java等。
在本实施例中,第一确定模块702可以确定参数对应的参数值。参数值可以为各种类型的数据,例如数字、字符、字符串等。作为示例,接收模块701中接收的参数中可以包括参数类型和参数值,该装置可以直接读取这些参数值。
在本实施例中,提取模块703可以基于参数,提取预先配置的用于校验参数值的校验模板。其中,校验模板可以是预先配置的一系列校验规则的集合。通常,接收的参数中可以包括模板的标识,根据该标识,提取模块703可以从本地或从远程提取相应的校验模板。
在本实施例中,第二确定模块704可以确定校验模板包括的用于对参数值进行校验的参数校验配置信息。其中,校验配置信息可以是预先在该校验模板中配置的信息,校验配置信息用于表示参数的相应校验规则。作为示例,校验配置信息可以包括但不限于:校验规则名称、校验规则说明、规则属性信息、参数类型信息、表示某个参数是否为必填项的信息等。
在本实施例中,校验模块705可以基于参数校验配置信息,对参数值进行校验,得到校验结果。通常,校验配置信息包括的规则属性信息可以表示某个参数相应的校验规则。作为示例,假设某个参数名称为reason,其对应的参数类型信息为string,即字符串类型,对应的规则属性信息为“minLength:0,maxLength:255”,表示reason参数的参数值最长不能超过255。再例如,假设某个参数名称为soldTime,其对应的参数类型信息为string,即字符串类型,对应的规则属性信息为“pattern:yyyy-mm-dd hh:mm:ss”,表示soldTime参数的参数值的指定格式为yyyy-mm-dd hh:mm:ss。
校验结果可以表示针对某个参数的参数值的校验是否通过。校验结果的形式可以为任意形式,例如数字、文字、符号等。
参照图8,图8是本公开另一示例性实施例提供的参数校验装置的结构示意图。
在一些可选的实现方式中,第二确定模块704包括:第一确定单元7041,用于确定校验模板是否为子模板;第二确定单元7042,用于若校验模板是子模板,将子模板包括的第一参数校验配置信息和子模板的父模板包括的第二参数校验配置信息确定为校验模板包括的参数校验配置信息;第三确定单元7043,用于若校验模板不是子模板,将校验模板包括的参数校验配置信息确定为用于对参数进行校验的参数校验配置信息。
在一些可选的实现方式中,第二确定模块704包括:第四确定单元7044,用于基于参数,从校验模板包括的至少两个校验组中确定目标校验组;第五确定单元7045,用于基于目标校验组包括的参数校验配置信息,确定用于对参数进行校验的参数校验配置信息。
在一些可选的实现方式中,第五确定单元7045进一步用于:响应于确定目标校验组为子校验组,将子校验组包括的参数校验配置信息和子校验组的父校验组包括的参数校验配置信息确定为用于对参数值进行校验的参数校验配置信息;响应于确定目标校验组不为子校验组,将目标校验组的参数校验配置信息确定为用于对参数值进行校验的参数校验配置信息。
在一些可选的实现方式中,第一确定模块702包括:第六确定单元7021,用于确定参数的类型;第一提取单元7022,用于从类型对应的参数路径提取参数的参数值。
在一些可选的实现方式中,该装置还包括:第三确定模块706,用于响应于确定校验结果为表示校验失败的信息,确定校验模板是否具有对应的错误信息模板;第一输出模块707,用于若具有,基于错误信息模板,生成并输出校验错误提示信息;第二输出模块708,用于若不具有,基于预设的通用错误信息模板,生成并输出校验错误提示信息。
在一些可选的实现方式中,第二确定模块704包括:第七确定单元7046,用于确定本地缓存中是否存在预先缓存的用于对参数值进行校验的参数校验配置信息;第二提取单元7047,用于若存在,从本地缓存中提取校验模板包括的用于对参数进行校验的参数校验配置信息。
在一些可选的实现方式中,该装置还包括:更新模块709,用于响应于接收到由预设的发布订阅系统发送的更新后的参数校验配置信息,将参数校验配置信息存储到本地缓存中。
本公开上述实施例提供的参数校验装置,通过从参数校验接口接收输入的参数并确定参数对应的参数值,然后提取预先配置的用于校验参数的校验模板;再确定校验模板包括的参数校验配置信息,最后基于参数校验配置信息,对参数值进行校验,得到校验结果,从而实现了使用配置校验模板的方式进行参数校验,可以对各种配置进行集中管理,相比于现有技术,本公开实施例采用的基于配置校验模板的方式进行参数校验,可以大大缩短校验方法的开发周期,提高参数校验的效率。同时,基于配置校验模板的方式进行参数校验,无需在校验规则变化时重启系统,只需获取更新的校验模板和参数校验配置信息即可,实现了校验配置的热启动,减少了系统重启可能带来的隐患。
图9是本公开一示例性实施例提供的校验模板的生成装置的结构示意图。本实施例可应用在电子设备上,如图9所示,校验模板的生成装置包括:第一获取模块901,用于获取用户通过可视化的参数校验配置界面输入的校验模板配置信息;建立模块902,用于基于校验模板配置信息,建立初始校验模板;第二获取模块903,用于获取用户通过参数校验配置界面输入的与初始校验模板对应的参数校验配置信息;生成模块904,用于将参数校验配置信息加入初始校验模板,得到用于进行参数校验的校验模板。
在本实施例中,第一获取模块901可以获取用户通过可视化的参数校验配置界面输入的校验模板配置信息。其中,参数校验配置界面可以是用户在前端操作的界面,通过该界面,用户可以自定义校验模板以及校验模板内的各种校验规则。校验模板配置信息包括但不限于:模板名称、模板编号、模板类型(例如父模板或子模板)等。
在本实施例中,建立模块902可以基于校验模板配置信息,建立初始校验模板。通常,用户在输入上述校验模板配置信息后,通过点击按钮或输入命令等操作,可以建立初始校验模板。
在本实施例中,第二获取模块903可以获取用户通过参数校验配置界面输入的与初始校验模板对应的参数校验配置信息。关于参数校验配置信息的含义,可以参考上述图2对应实施例中的相关描述,这里不再赘述。
在本实施例中,生成模块904可以将参数校验配置信息加入初始校验模板,得到用于进行参数校验的校验模板。可选的,可以在校验模板中对参数校验配置信息进行分组,还可以设置校验组之间的继承关系。
通常,配置好的校验模板可以存储在数据库中,通过发布订阅系统,将数据库中的校验模板发送到用于执行上述图2对应实施例的多个电子设备中。
本公开上述实施例提供的装置,通过可视化的校验配置界面进行校验模板的配置,从而大大提高了用户进行校验配置的便利性,解决了现有技术没有可视化的配置管理界面,对开发人员不友好,非开发人员无法介入配置变更,导致配置效率低的问题。此外,校验模板的生成方法可以由不同于参数校验方法的执行主体执行,从而可以将配置好的校验模板部署到多个参数校验设备中,有助于实现校验模板的集群式部署,提高参数校验的效率。
示例性电子设备
下面,参考图10来描述根据本公开实施例的电子设备。该电子设备可以是如图1所示的终端设备101和服务器103中的任一个或两者、或与它们独立的单机设备,该单机设备可以与终端设备101和服务器103进行通信,以从它们接收所采集到的输入信号。
图10图示了根据本公开实施例的电子设备的框图。
如图10所示,电子设备1000包括一个或多个处理器1001和存储器1002。
处理器1001可以是中央处理单元(CPU)或者具有数据处理能力和/或指令执行能力的其他形式的处理单元,并且可以控制电子设备1000中的其他组件以执行期望的功能。
存储器1002可以包括一个或多个计算机程序产品,计算机程序产品可以包括各种形式的计算机可读存储介质,例如易失性存储器和/或非易失性存储器。易失性存储器例如可以包括随机存取存储器(RAM)和/或高速缓冲存储器(cache)等。非易失性存储器例如可以包括只读存储器(ROM)、硬盘、闪存等。在计算机可读存储介质上可以存储一个或多个计算机程序指令,处理器1001可以运行程序指令,以实现上文的本公开的各个实施例的参数校验方法或校验模板的生成方法以及/或者其他期望的功能。在计算机可读存储介质中还可以存储诸如输入的参数、校验模板、参数校验配置信息等各种内容。
在一个示例中,电子设备1000还可以包括:输入装置1003和输出装置1004,这些组件通过总线系统和/或其他形式的连接机构(未示出)互连。
例如,在该电子设备是终端设备101或服务器103时,该输入装置1003可以是鼠标、键盘等设备,用于输入参数、各种命令等。在该电子设备是单机设备时,该输入装置1003可以是通信网络连接器,用于从终端设备101和服务器103接收所输入的参数、各种命令等。
该输出装置1004可以向外部输出各种信息,包括校验结果。该输出设备1004可以包括例如显示器、扬声器、打印机、以及通信网络及其所连接的远程输出设备等等。
当然,为了简化,图10中仅示出了该电子设备1000中与本公开有关的组件中的一些,省略了诸如总线、输入/输出接口等等的组件。除此之外,根据具体应用情况,电子设备1000还可以包括任何其他适当的组件。
示例性计算机程序产品和计算机可读存储介质
除了上述方法和设备以外,本公开的实施例还可以是计算机程序产品,其包括计算机程序/指令,所述计算机程序/指令在被处理器运行时使得所述处理器执行本说明书上述“示例性方法”部分中描述的根据本公开各种实施例的参数校验方法或校验模板的生成方法中的步骤。
所述计算机程序产品可以以一种或多种程序设计语言的任意组合来编写用于执行本公开实施例操作的程序代码,所述程序设计语言包括面向对象的程序设计语言,诸如Java、C++等,还包括常规的过程式程序设计语言,诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。
此外,本公开的实施例还可以是计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行本说明书上述“示例性方法”部分中描述的根据本公开各种实施例的参数校验方法或校验模板的生成方法中的步骤。
所述计算机可读存储介质可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以包括但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
示例性计算机程序
本公开实施例还提供了一种计算机程序产品,包括计算机程序/指令,所述计算机程序/指令被处理器执行时,可以实现上述任一可能的实现方式中的参数校验方法或校验模板的生成方法。
该计算机程序产品可以具体通过硬件、软件或其结合的方式实现。在一个可选例子中,该计算机程序产品具体体现为计算机存储介质,在另一个可选例子中,该计算机程序产品具体体现为软件产品,例如软件开发包(Software Development Kit,SDK)等等。
以上结合具体实施例描述了本公开的基本原理,但是,需要指出的是,在本公开中提及的优点、优势、效果等仅是示例而非限制,不能认为这些优点、优势、效果等是本公开的各个实施例必须具备的。另外,上述公开的具体细节仅是为了示例的作用和便于理解的作用,而非限制,上述细节并不限制本公开为必须采用上述具体的细节来实现。
本说明书中各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似的部分相互参见即可。对于系统实施例而言,由于其与方法实施例基本对应,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本公开中涉及的器件、装置、设备、系统的方框图仅作为例示性的例子并且不意图要求或暗示必须按照方框图示出的方式进行连接、布置、配置。如本领域技术人员将认识到的,可以按任意方式连接、布置、配置这些器件、装置、设备、系统。诸如“包括”、“包含”、“具有”等等的词语是开放性词汇,指“包括但不限于”,且可与其互换使用。这里所使用的词汇“或”和“和”指词汇“和/或”,且可与其互换使用,除非上下文明确指示不是如此。这里所使用的词汇“诸如”指词组“诸如但不限于”,且可与其互换使用。
可能以许多方式来实现本公开的方法和装置。例如,可通过软件、硬件、固件或者软件、硬件、固件的任何组合来实现本公开的方法和装置。用于所述方法的步骤的上述顺序仅是为了进行说明,本公开的方法的步骤不限于以上具体描述的顺序,除非以其它方式特别说明。此外,在一些实施例中,还可将本公开实施为记录在记录介质中的程序,这些程序包括用于实现根据本公开的方法的机器可读指令。因而,本公开还覆盖存储用于执行根据本公开的方法的程序的记录介质。
还需要指出的是,在本公开的装置、设备和方法中,各部件或各步骤是可以分解和/或重新组合的。这些分解和/或重新组合应视为本公开的等效方案。
提供所公开的方面的以上描述以使本领域的任何技术人员能够做出或者使用本公开。对这些方面的各种修改对于本领域技术人员而言是非常显而易见的,并且在此定义的一般原理可以应用于其他方面而不脱离本公开的范围。因此,本公开不意图被限制到在此示出的方面,而是按照与在此公开的原理和新颖的特征一致的最宽范围。
为了例示和描述的目的已经给出了以上描述。此外,此描述不意图将本公开的实施例限制到在此公开的形式。尽管以上已经讨论了多个示例方面和实施例,但是本领域技术人员将认识到其某些变型、修改、改变、添加和子组合。
Claims (10)
1.一种参数校验方法,包括:
从预设的参数校验接口接收输入的参数;
确定所述参数对应的参数值;
基于所述参数,提取预先配置的用于校验所述参数值的校验模板;
确定所述校验模板包括的用于对所述参数值进行校验的参数校验配置信息;
基于所述参数校验配置信息,对所述参数值进行校验,得到校验结果。
2.根据权利要求1所述的方法,其中,所述确定所述校验模板包括的用于对所述参数值进行校验的参数校验配置信息,包括:
确定所述校验模板是否为子模板;
若所述校验模板是子模板,将所述子模板包括的第一参数校验配置信息和所述子模板的父模板包括的第二参数校验配置信息确定为所述校验模板包括的参数校验配置信息;
若所述校验模板不是子模板,将所述校验模板包括的参数校验配置信息确定为所述用于对所述参数值进行校验的参数校验配置信息。
3.根据权利要求1所述的方法,其中,所述确定所述校验模板包括的用于对所述参数值进行校验的参数校验配置信息,包括:
基于所述参数,从所述校验模板包括的至少两个校验组中确定目标校验组;
基于所述目标校验组包括的参数校验配置信息,确定所述用于对所述参数值进行校验的参数校验配置信息。
4.根据权利要求3所述的方法,其中,所述基于所述目标校验组包括的参数校验配置信息,确定所述用于对所述参数值进行校验的参数校验配置信息,包括:
响应于确定所述目标校验组为子校验组,将所述子校验组包括的参数校验配置信息和所述子校验组的父校验组包括的参数校验配置信息确定为所述用于对所述参数值进行校验的参数校验配置信息;
响应于确定所述目标校验组不为子校验组,将所述目标校验组的参数校验配置信息确定为所述用于对所述参数值进行校验的参数校验配置信息。
5.根据权利要求1所述的方法,其中,所述确定所述参数对应的参数值,包括:
确定所述参数的类型;
从所述类型对应的参数路径提取所述参数的参数值;和/或,
在所述基于所述参数校验配置信息,对所述参数值进行校验,得到校验结果之后,所述方法还包括:
响应于确定所述校验结果为表示校验失败的信息,确定所述校验模板是否具有对应的错误信息模板;
若具有,基于所述错误信息模板,生成并输出校验错误提示信息;
若不具有,基于预设的通用错误信息模板,生成并输出校验错误提示信息。
6.根据权利要求1所述的方法,其中,所述确定所述校验模板包括的用于对所述参数值进行校验的参数校验配置信息,包括:
确定本地缓存中是否存在预先缓存的所述用于对所述参数值进行校验的参数校验配置信息;
若存在,从所述本地缓存中提取所述校验模板包括的用于对所述参数值进行校验的参数校验配置信息。
7.根据权利要求6所述的方法,其中,所述方法还包括:
响应于接收到由预设的发布订阅系统发送的更新后的参数校验配置信息,将所述参数校验配置信息存储到所述本地缓存中。
8.一种校验模板的生成方法,包括:
获取用户通过可视化的参数校验配置界面输入的校验模板配置信息;
基于所述校验模板配置信息,建立初始校验模板;
获取用户通过所述参数校验配置界面输入的与所述初始校验模板对应的参数校验配置信息;
将所述参数校验配置信息加入所述初始校验模板,得到用于进行参数校验的校验模板。
9.一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序用于执行上述权利要求1-7任一所述的方法。
10.一种计算机程序产品,包括计算机程序/指令,所述计算机程序/指令被处理器执行时实现权利要求1-7任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210121664.8A CN114461302A (zh) | 2022-02-09 | 2022-02-09 | 参数校验方法、校验模板的生成方法及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210121664.8A CN114461302A (zh) | 2022-02-09 | 2022-02-09 | 参数校验方法、校验模板的生成方法及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114461302A true CN114461302A (zh) | 2022-05-10 |
Family
ID=81414280
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210121664.8A Pending CN114461302A (zh) | 2022-02-09 | 2022-02-09 | 参数校验方法、校验模板的生成方法及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114461302A (zh) |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103544074A (zh) * | 2012-07-09 | 2014-01-29 | 阿里巴巴集团控股有限公司 | 一种业务的校验方法及装置 |
CN105550054A (zh) * | 2015-12-04 | 2016-05-04 | 中国建设银行股份有限公司 | 处理错误提示信息的方法及系统 |
CN106603520A (zh) * | 2016-12-08 | 2017-04-26 | 深圳Tcl数字技术有限公司 | 异常信息的拦截方法及装置 |
CN107196789A (zh) * | 2017-05-05 | 2017-09-22 | 京信通信技术(广州)有限公司 | 一种校验基站参数的方法和装置 |
CN107579836A (zh) * | 2016-07-04 | 2018-01-12 | 中兴通讯股份有限公司 | 一种参数校验方法和装置、以及网管服务器 |
CN108170557A (zh) * | 2018-01-24 | 2018-06-15 | 百度在线网络技术(北京)有限公司 | 用于输出信息的方法和装置 |
CN110825634A (zh) * | 2019-11-04 | 2020-02-21 | 深圳前海微众银行股份有限公司 | 参数质量校验方法、装置、设备及计算机可读存储介质 |
CN111078573A (zh) * | 2019-12-24 | 2020-04-28 | 深圳前海微众银行股份有限公司 | 一种测试报文的生成方法及装置 |
CN111698123A (zh) * | 2020-06-23 | 2020-09-22 | 深圳壹账通智能科技有限公司 | 进件系统异常定位方法、装置、计算机设备及存储介质 |
CN112052182A (zh) * | 2020-09-27 | 2020-12-08 | 平安信托有限责任公司 | 接口自动化测试方法、装置、计算机设备及存储介质 |
-
2022
- 2022-02-09 CN CN202210121664.8A patent/CN114461302A/zh active Pending
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103544074A (zh) * | 2012-07-09 | 2014-01-29 | 阿里巴巴集团控股有限公司 | 一种业务的校验方法及装置 |
CN105550054A (zh) * | 2015-12-04 | 2016-05-04 | 中国建设银行股份有限公司 | 处理错误提示信息的方法及系统 |
CN107579836A (zh) * | 2016-07-04 | 2018-01-12 | 中兴通讯股份有限公司 | 一种参数校验方法和装置、以及网管服务器 |
CN106603520A (zh) * | 2016-12-08 | 2017-04-26 | 深圳Tcl数字技术有限公司 | 异常信息的拦截方法及装置 |
CN107196789A (zh) * | 2017-05-05 | 2017-09-22 | 京信通信技术(广州)有限公司 | 一种校验基站参数的方法和装置 |
CN108170557A (zh) * | 2018-01-24 | 2018-06-15 | 百度在线网络技术(北京)有限公司 | 用于输出信息的方法和装置 |
CN110825634A (zh) * | 2019-11-04 | 2020-02-21 | 深圳前海微众银行股份有限公司 | 参数质量校验方法、装置、设备及计算机可读存储介质 |
CN111078573A (zh) * | 2019-12-24 | 2020-04-28 | 深圳前海微众银行股份有限公司 | 一种测试报文的生成方法及装置 |
CN111698123A (zh) * | 2020-06-23 | 2020-09-22 | 深圳壹账通智能科技有限公司 | 进件系统异常定位方法、装置、计算机设备及存储介质 |
CN112052182A (zh) * | 2020-09-27 | 2020-12-08 | 平安信托有限责任公司 | 接口自动化测试方法、装置、计算机设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111026470B (zh) | 用于输入数据的验证和转换的系统和方法 | |
CN107704479B (zh) | 文件生成方法和装置 | |
CN109739478A (zh) | 前端项目自动化构建方法、装置、存储介质及电子设备 | |
WO2017162024A1 (zh) | 组件和模板的可视化开发方法及系统、存储介质、设备 | |
CN102187314A (zh) | 可视地建模、调试和执行面向资源的程序的交互式设计环境 | |
CN112070608B (zh) | 信息处理方法、装置、介质及电子设备 | |
CN112187558B (zh) | 数据校验方法、装置、电子设备 | |
CN111581920A (zh) | 文档转换方法、装置、设备及计算机存储介质 | |
CN103019874A (zh) | 基于数据同步实现异常处理的方法及装置 | |
CN112560078A (zh) | 区块链数据处理方法、装置、设备及介质 | |
CN109408247A (zh) | 交互数据处理方法及装置 | |
KR20190095099A (ko) | 거래 시스템 에러 검출 방법, 장치, 저장 매체 및 컴퓨터 장치 | |
KR102226463B1 (ko) | 프로세스자동화프로그램과 연동되는 ui/ux솔루션제공서버, 이를 포함하는 프로세스자동화시스템, 이를 이용한 프로세스자동화방법, 및 이를 실행하기 위한 컴퓨터 프로그램 | |
CN113031946A (zh) | 一种渲染页面组件的方法和装置 | |
CN109582317A (zh) | 用于调试寄宿应用的方法和装置 | |
CN109299124A (zh) | 用于更新模型的方法和装置 | |
CN113721910A (zh) | 界面代码生成方法、装置、电子设备和计算机可读介质 | |
WO2023151397A1 (zh) | 应用程序部署方法、装置、设备及介质 | |
CN114461302A (zh) | 参数校验方法、校验模板的生成方法及存储介质 | |
JP7029557B1 (ja) | 判定装置、判定方法および判定プログラム | |
CN115391343A (zh) | 账单数据处理方法、装置、电子设备和存储介质 | |
CN108170557B (zh) | 用于输出信息的方法和装置 | |
CN112905970A (zh) | 权限校验方法、装置、计算机可读存储介质及电子设备 | |
CN112527278A (zh) | 智能表单生成及发布方法、装置、终端及存储介质 | |
CN112669000A (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 |