RequestValidator.IsValidRequestString Método

Definición

Valida una cadena que contiene datos de solicitud HTTP.

protected public:
 virtual bool IsValidRequestString(System::Web::HttpContext ^ context, System::String ^ value, System::Web::Util::RequestValidationSource requestValidationSource, System::String ^ collectionKey, [Runtime::InteropServices::Out] int % validationFailureIndex);
protected internal virtual bool IsValidRequestString(System.Web.HttpContext context, string value, System.Web.Util.RequestValidationSource requestValidationSource, string collectionKey, out int validationFailureIndex);
abstract member IsValidRequestString : System.Web.HttpContext * string * System.Web.Util.RequestValidationSource * string * int -> bool
override this.IsValidRequestString : System.Web.HttpContext * string * System.Web.Util.RequestValidationSource * string * int -> bool
Protected Friend Overridable Function IsValidRequestString (context As HttpContext, value As String, requestValidationSource As RequestValidationSource, collectionKey As String, ByRef validationFailureIndex As Integer) As Boolean

Parámetros

context
HttpContext

Contexto de la solicitud actual.

value
String

Datos de solicitud HTTP que se van a validar.

requestValidationSource
RequestValidationSource

Enumeración que representa el origen de los datos de solicitud que se están validando. A continuación se muestran los valores posibles para la enumeración:

  • QueryString
  • Form
  • Cookies
  • Files
  • RawUrl
  • Path
  • PathInfo
  • Headers.
collectionKey
String

Clave de la colección de solicitudes del elemento que se va a validar. Este parámetro es opcional. Este parámetro se usa si los datos que se van a validar se obtienen de una colección. Si los datos que se van a validar no proceden de una colección, collectionKey puede ser null.

validationFailureIndex
Int32

Cuando este método devuelve, indica el punto inicial de base cero del texto problemático o no válido de la colección de solicitudes. Este parámetro se pasa sin inicializar.

Devoluciones

true si la cadena que se va a validar es válida; de lo contrario, false.

Comentarios

Implemente este método para realizar la validación personalizada de los datos de solicitud. El comportamiento base del método IsValidRequestString(HttpContext, String, RequestValidationSource, String, Int32) es como el comportamiento que ASP.NET implementa internamente para comprobar si hay cadenas peligrosas en la validación de scripts entre sitios. Para obtener más información, vea How To: Prevent Cross-Site Scripting in ASP.NET.

Si la lógica de validación personalizada detecta un error, este método debe devolver false y proporcionar un valor en validationFailureIndex para indicar el punto inicial del texto que provocó el error. El valor de validationFailureIndex debe ser 0 o un entero positivo.

La lógica de una comprobación de validación de solicitudes continúa de la siguiente manera:

  • La HttpRequest clase realiza una comprobación de eliminación de caracteres NULL en los datos entrantes.

  • La HttpRequest clase llama al IsValidRequestString método (la implementación predeterminada del método base) o llama a una versión derivada del método .

  • Si IsValidRequestString método devuelve false para indicar un error de validación, ASP.NET construye una cadena de error (si es necesario) e inicia una excepción HttpRequestValidationException.

Se aplica a