文章教程

8.1常用的数据验证技术

8/31/2020 9:19:23 PM 人评论 次浏览

8.1 常用的数据验证技术

由于Web应用程序是基于请求/响应模式的,所以Web的数据验证有多种方式。可以在服务器端直接对数据进行验证,也可以编写客户端脚本来实现数据有效性的验证,当这些数据提交给服务器时就经过了验证。在实际的项目开发中,既需要客户端验证,也需要服务器验证。

8.1.1 基于图片和附加码的验证

目前,开发者实现图片验证码时有两种方式:一种是通过动态数据网页中的各种脚本来实现;一种是用支持动态数据网页的第三方组件来实现。组件的应用会提高效率,比较容易实现。在ASP.NET中编写基本的脚本,赋予其必要的属性,例如生成码颜色、码位数和码尺寸等,就可以灵活地生成一组验证码。

验证码图片一般放在用户名和用户密码的后边,可以根据需要放置。附加码通常由服务器随机产生,一般是由数字和字母组成的一串字符,显示在登录页面中,用户登录时必须将附加码一并输入提交,服务器对提交的验证码同时进行验证。

8.1.2 Web表单数据验证

在ASP.NET中,被指定为runat="server"的表单被称为Web表单,Web表单本身是基于服务器的,是ASP.NET用来为应用程序提供大部分功能框架的一部分,服务器对界面的情况一清二楚,也就是说用户元素只能在服务器上创建。当用户输入完数据提交表单时,服务器将通过另外的页面来验证Web表单中所输入数据是否有效。

表单在实现验证方面具有灵活性和易于实现性,其数据验证功能比较强大,开发者既可以把用户信息放在Web.config配置文件中,也可以将用户的验证信息放在数据库或XML文件中,通过创建自己定义的程序来验证数据。

8.1.3 Web窗体页数据验证

在ASP.NET中提供了一种新型的数据验证,它将使用Web窗体页中的Web服务器控件来实现数据验证,通常将其称为Web窗体页数据验证技术。因此,把专门用于Web数据验证的Web服务器控件称为Web数据验证控件。

ASP.NET中提供了6种数据验证控件,5种基础验证控件,1种验证汇总控件,这些控件将在8.2节和8.3节进行介绍。

8.1.4 客户端脚本验证

为了减少数据验证时浏览器和服务器之间的往返时间,可以采用客户端脚本来实现其功能,在浏览器中使用的脚本有很多,如VBScript、JScript和JavaScript等,但是这样存在安全隐患。这是因为用户可以任意修改客户端脚本跳过客户端的验证,还有些浏览器是不支持客户端脚本的,这样,数据验证就必须在服务器进行。

8.1.5 使用正则表达式进行数据验证

正则表达式(Regular Expression)是由普通字符(称为原义字符)和特殊字符(称为元字符)组成的字符串,用来定义字符处理时需要匹配的内容模式。也就是说,正则表达式可以让用户通过使用一系列的特殊字符构建匹配模式,然后把匹配模式与Web页面的表单输入等目标对象进行比较,根据比较对象中是否包含匹配模式以执行相应的处理操作。对于处理字符串的许多应用程序而言,正则表达式是不可缺少的模式描述工具。

教程类别