掌桥专利:专业的专利平台
掌桥专利
首页

一种数据验证方法、电子设备和存储介质

文献发布时间:2023-06-19 12:18:04


一种数据验证方法、电子设备和存储介质

技术领域

本发明实施例涉及数据处理技术领域,尤其涉及一种数据验证方法、电子设备和存储介质。

背景技术

目前在程序执行时通常需要应用到不同类型的数据,并且需要对数据进行验证以保证程序的正常运行,而目前在对数据进行验证时则主要是侧重于语法方面。

但是在程序执行过程中,不仅需要保障数据语法的正确性,同时还需要保证数据的合法性,如果程序执行过程中所采用的是非法的无效数据,则会出现程序执行不可控的情况,而目前的数据验证过程并不能保证数据合法性的要求。

发明内容

本发明实施例提供了一种数据验证方法、电子设备和存储介质,以实现对数据合法性的验证。

第一方面,本发明实施例提供了一种数据验证方法,应用于数据验证设备,数据验证设备包括:验证器,以及与验证器连接的数据代理器,

通过数据代理器将数据获取请求发送给验证器,其中,数据获取请求中包含数据指定类型;

通过验证器根据数据获取请求获取指定类型的数据以及与指定类型的数据所匹配的约束条件,并基于约束条件对指定类型的数据进行合法性验证。

第二方面,本发明实施例还提供了一种电子设备,电子设备包括:

一个或多个处理器;

存储装置,用于存储一个或多个程序;

当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现本发明任意实施例的方法。

第三方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本发明任意实施例的方法。

在本发明实施例中,通过数据代理器向验证器发送数据获取请求,以使验证器根据数据获取请求中所包含的数据指定类型获取到指定类型的数据后通过所匹配的约束条件对指定类型的数据进行合法性验证,从而保证经过验证后的数据是有效的,避免出现程序执行不可控的情况发生。

附图说明

图1是本发明实施例一提供的数据验证方法的流程图;

图2是本发明实施例一提供的数据验证设备的结构示意图;

图3是本发明实施例二提供的数据验证方法的流程图;

图4是本发明实施例三提供的一种电子设备的结构框图。

具体实施方式

下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。

实施例一

图1是本发明实施例提供的数据验证方法的流程图,本实施例可适用于对数据进行合法性验证的情况,该方法可以应用于本发明实施例中的数据验证设备,如图2所示为本实施方式中的数据验证设备的结构示意图,如图2所示,数据验证设备包括:数据代理器,以及与数据代理器分别连接的验证器和执行器,并且验证器分别连接原始数据库和约束条件数据库。本实施例的方法具体包括如下步骤:

步骤S101,通过数据代理器将数据获取请求发送给验证器。

可选的,通过数据代理器将数据获取请求发送给验证器之前,还可以包括:通过执行器接收用户输入的数据获取请求,并将数据获取请求发送给数据代理器。

其中,执行器在程序执行的过程中需要采用指定类型的数据以保证程序的正常运行,并且具体可以是通过执行器接收用户输入的数据获取请求,而在数据获取请求中包含数据指定类型,并将数据获取请求发送给数据代理器,因此可以将执行器作为数据的使用方。而执行器与数据代理器可以采用有线传输方式或无线传输方式进行数据获取请求的传输,本实施方式中并不限定数据获取请求的具体传输方式,只要能够实现数据代理器与执行器之间请求的正常传输都是在本申请的保护范围内。

具体的说,由于不同类型的数据可以对应不同的验证器,因此数据代理器在获取到数据获取请求后,会解析数据获取请求中所包含的数据指定类型,并将数据获取请求发送给与数据指定类型所匹配的验证器中。

步骤S102,通过验证器根据数据获取请求获取指定类型的数据以及与指定类型的数据所匹配的约束条件,并基于约束条件对指定类型的数据进行合法性验证。

可选的,通过验证器根据数据获取请求获取指定类型的数据以及与指定类型的数据所配置的约束条件,可以包括:通过验证器根据数据获取请求从原始数据库中进行查询,根据查询结果获取指定类型的数据;通过验证器从约束条件数据库中查找与指定类型的数据所匹配的约束条件。

可选的,数据验证设备还包括配置器,通过验证器从约束条件数据库中查找与指定类型的数据所匹配的约束条件之前,还可以包括:通过配置器对不同类型的数据所匹配的约束条件在约束条件数据库中进行预先配置。

其中,本实施方式中具体可以通过配置器对不同类型的数据所匹配的约束条件在预设条件数据库中进行预先配置,即在预设条件数据库中包含数据类型与约束条件的对应关系,约束条件中具体包括指定格式和指定路径。而验证器在获取到数据代理器所发送的数据获取请求后,根据数据指定类型从原始数据库中进行查询,以获取指定类型的数据。同时验证器还会从约束条件数据库中查找与指定类型的数据所匹配的约束条件,因此本实施方式的验证器根据数据获取请求可以同时获取到两个信息,即指定类型的数据以及与指定类型的数据所匹配的约束条件。

需要说明的,本实施方式中验证器所获取的指定类型的数据中所包含的相同类型数据的条数至少为两个,即针对同一类型的多条数据可以通过验证器进行同步验证,从而节省了数据验证的时间。

可选的,基于约束条件对指定类型的数据进行合法性验证,可以包括:通过验证器判断指定类型的数据是否符合指定格式和指定路径,若是,则生成验证通过消息,并将验证通过消息和指定类型的数据通过数据代理器传输给执行器,否则,生成验证未通过消息,并将验证未通过消息通过数据代理器传输给执行器。

具体的说,由于验证器已经获取到指定类型的数据以及指定类型的数据所匹配的约束条件,但此时所获取的指定类型的数据可能并不是有效数据,因此需要采用所获取的约束条件对指定类型的数据进行合法性验证。由于在获取指定类型的数据时还会获取指定类型的数据的路径信息,同时还会对指定类型的数据进行识别确定格式信息。在对指定类型的数据进行合法性验证时只有确定指定类型的数据的路径信息与指定路径相符,同时格式信息与指定格式同时相符的情况下,才会生成验证通过消息并确定指定类型的数据为合法数据,只要上述信息中的任何一项不符合,则会生成验证未通过消息并确定指定类型的数据为非法用户。

其中,只有确定指定类型的数据为合法数据时,验证器才会将验证通过的指定类型的数据通过数据代理器传输给执行器;在验证未通过的情况下则不会将指定类型的数据通过数据代理器传输给执行器,而只是将验证未通过消息通过数据代理器传输给执行器,以对执行器所发送的数据获取请求进行响应。

在本发明实施例中,通过数据代理器向验证器发送数据获取请求,以使验证器根据数据获取请求中所包含的数据指定类型获取到指定类型的数据后通过所匹配的约束条件对指定类型的数据进行合法性验证,从而保证经过验证后的数据是有效的,避免出现程序执行不可控的情况发生。

实施例二

图3是本发明实施例提供的数据验证方法的流程图,本实施例以上述实施例为基础,在基于约束条件对指定类型的数据进行合法性验证之后,还包括:通过执行器确定获取到验证通过消息和指定类型的数据时,基于获取的指定类型的数据执行相应的任务。

如图3所示,本公开实施例的方法具体包括:

步骤S201,通过数据代理器将数据获取请求发送给验证器。

可选的,通过数据代理器将数据获取请求发送给验证器之前,还可以包括:通过执行器接收用户输入的数据获取请求,并将数据获取请求发送给数据代理器。

步骤S202,通过验证器根据数据获取请求获取指定类型的数据以及与指定类型的数据所匹配的约束条件,并基于约束条件对指定类型的数据进行合法性验证。

可选的,通过验证器根据数据获取请求获取指定类型的数据以及与指定类型的数据所配置的约束条件,可以包括:通过验证器根据数据获取请求从原始数据库中进行查询,根据查询结果获取指定类型的数据;通过验证器从约束条件数据库中查找与指定类型的数据所匹配的约束条件。

可选的,数据验证设备还包括配置器,通过验证器从约束条件数据库中查找与指定类型的数据所匹配的约束条件之前,还可以包括:通过配置器对不同类型的数据所匹配的约束条件在约束条件数据库中进行预先配置。

可选的,基于约束条件对指定类型的数据进行合法性验证,可以包括:通过验证器判断指定类型的数据是否符合指定格式和指定路径,若是,则生成验证通过消息,并将验证通过消息和指定类型的数据通过数据代理器传输给执行器,否则,生成验证未通过消息,并将验证未通过消息通过数据代理器传输给执行器。

步骤S203,通过执行器确定获取到验证通过消息和指定类型的数据时,基于获取的指定类型的数据执行相应的任务。

具体的说,本实施方式中在通过执行器确定获取到验证通过消息和指定类型的数据时,说明指定类型的数据已经为验证通过的合法数据,由于执行器在执行任务时需要应用到指定类型的数据,因此执行器会基于所获取的经过验证之后的指定类型的数据执行相应的任务。因为指定类型的数据是经过验证之后的有效数据,因此执行器在执行相应的任务时可以避免不可控情况的发生。

需要说明的是,本实施方式中在基于获取的指定类型的数据执行相应的任务之后,还需要对任务的执行结果进行检测,如果任务的执行结果依然存在异常情况,例如,执行中断或执行结果出现乱码等,则首先对执行器的硬件设备进行检测,在确定硬件设备正常的情况下则可以确定指定类型的数据验证过程存在问题,此时可能是约束条件数据库中所配置的约束条件存在配置错误,因此需要对约束条件数据库中与指定类型的数据所匹配的约束条件进行修正调整。

在本发明实施例中,通过数据代理器向验证器发送数据获取请求,以使验证器根据数据获取请求中所包含的数据指定类型获取到指定类型的数据后通过所匹配的约束条件对指定类型的数据进行合法性验证,从而保证经过验证后的数据是有效的,并通过执行器基于经过验证之后的指定类型的数据执行相应的任务,进一步避免出现程序执行不可控的情况发生。

实施例三

图4是本发明实施例提供的一种电子设备的结构示意图。图4示出了适用于用来实现本发明实施方式的示例性电子设备412的框图。图4显示的电子设备412仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。

如图4所示,电子设备412以通用计算设备的形式出现。电子设备412的组件可以包括但不限于:一个或者多个处理器416,存储器428,连接不同系统组件(包括存储器428和处理器416)的总线418.

总线418表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(ISA)总线,微通道体系结构(MAC)总线,增强型ISA总线、视频电子标准协会(VESA)局域总线以及外围组件互连(PCI)总线。

电子设备412典型地包括多种计算机系统可读介质。这些介质可以是任何能够被电子设备412访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。

存储器428用于存储指令。存储器428可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(RAM)430和/或高速缓存存储器432。电子设备412可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统434可以用于读写不可移动的、非易失性磁介质(图4未显示,通常称为“硬盘驱动器”)。尽管图4中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如CD-ROM,DVD-ROM或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线418相连。存储器428可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明各实施例的功能。

具有一组(至少一个)程序模块442的程序/实用工具440,可以存储在例如存储器428中,这样的程序模块442包括但不限于操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块442通常执行本发明所描述的实施例中的功能和/或方法。

电子设备412也可以与一个或多个外部设备414(例如键盘、指向设备、显示器424等)通信,还可与一个或者多个使得用户能与该电子设备412交互的设备通信,和/或与使得该电子设备412能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口422进行。并且,电子设备412还可以通过网络适配器420与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器420通过总线418与电子设备412的其它模块通信。应当明白,尽管图4中未示出,可以结合电子设备412使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。

处理器416通过运行存储在存储器428中的指令,从而执行数据验证方法:通过数据代理器将数据获取请求发送给验证器,其中,数据获取请求中包含数据指定类型;通过验证器根据数据获取请求获取指定类型的数据以及与指定类型的数据所匹配的约束条件,并基于约束条件对指定类型的数据进行合法性验证。

实施例四

本发明实施例还提供一种包含计算机可执行指令的存储介质,计算机可执行指令在由计算机处理器执行时用于执行数据验证方法,包括:通过数据代理器将数据获取请求发送给验证器,其中,数据获取请求中包含数据指定类型;通过验证器根据数据获取请求获取指定类型的数据以及与指定类型的数据所匹配的约束条件,并基于约束条件对指定类型的数据进行合法性验证。

通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(RandomAccess Memory,RAM)、闪存(FLASH)、硬盘或光盘等,包括若干指令用以使得一台电子设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的数据验证方法。

值得注意的是,上述实施例中所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。

注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

相关技术
  • 一种区块链的数据的验证方法、装置、电子设备及存储介质
  • 一种数据验证方法、装置、电子设备及存储介质
技术分类

06120113240928