Asp.net4新增自定义验证类RequestValidator介绍

在.Net4中有个System.Web.Util.RequestValidator类,该类是自定义请求验证的基类.我们可以通过实现一个继承自该基类的类,从而实现自己的请求验证过程.

目前,可以验证的请求由枚举类RequestValidatorSource提供,可枚举项具体如下:

1. QueryString 查询字符串。

IsValidRequestString 方法的 collectionKey 参数设置为集合中查询字符串参数的名称。

IsValidRequestString 方法的 value 参数设置为集合中查询字符串参数的值。

 

2. Form. 窗体值。

IsValidRequestString 方法的 collectionKey 参数设置为集合中窗体参数的名称。

IsValidRequestString 方法的 value 参数设置为集合中窗体参数的值。

 

3.Cookies 请求 Cookie。

IsValidRequestString 方法的 collectionKey 参数设置为集合中的 Cookie 的名称。

IsValidRequestString 方法的 value 参数设置为集合中的值。

 

4.Files 上载的文件。

IsValidRequestString 方法的 collectionKey 参数设置为集合中已上载文件的名称。

IsValidRequestString 方法的 value 参数设置为集合中已上载文件的值。

 

5.RawUrl 原始 URL。 (域后的 URL 部分。)

IsValidRequestString 方法的 collectionKey 参数设置为 null。 (RawUrl 不是值集合。)

IsValidRequestString 方法的 value 参数设置为 RawUrl 字段的值。

 

6.Path 虚拟路径。

IsValidRequestString 方法的 collectionKey 参数设置为 null(Path 不是值的集合)。

IsValidRequestString 方法的 value 参数设置为 Path 字段的值。

 

7.PathInfo HTTP PathInfo 字符串(URL 路径的扩展)。

IsValidRequestString 方法的 collectionKey 参数设置为 null(PathInfo 不是值的集合)。

IsValidRequestString 方法的 value 参数设置为 PathInfo 字段的值。

 

8.Headers 请求标头。

IsValidRequestString 方法的 collectionKey 参数设置为集合中 HTTP 头的名称。

IsValidRequestString 方法的 value 参数设置为集合中 HTTP 头的值。

 

通过以上这些枚举我们基本上就能对常见提交的数据进行统一请求验证处理,比如:忽略某些特殊的数据或者处理某些特殊的数据或者提供一个友好的错误页面等。

odonryionissE -
共有0个回答