Partilhar via


RequestValidator.IsValidRequestString Método

Definição

Valida uma cadeia de caracteres que contém dados de solicitação 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

O contexto da solicitação atual.

value
String

Os dados da solicitação HTTP a serem validados.

requestValidationSource
RequestValidationSource

Uma enumeração que representa a origem dos dados de solicitação sendo validados. A seguir, valores possíveis para a enumeração:

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

A chave na coleção de solicitações do item a ser validado. Esse parâmetro é opcional. Esse parâmetro será usado se os dados a serem validados forem obtidos de uma coleção. Se os dados a serem validados não forem de uma coleção, collectionKey poderá ser null.

validationFailureIndex
Int32

Quando este método retorna, indica o ponto de partida com base em zero do texto inválido ou problemático na coleção de solicitações. Este parâmetro é passado não inicializado.

Retornos

true se a cadeia de caracteres a ser validada for válida, caso contrário, false.

Comentários

Você implementa esse método para executar a validação personalizada de dados de solicitação. O comportamento base do IsValidRequestString(HttpContext, String, RequestValidationSource, String, Int32) método é como o comportamento que ASP.NET implementa internamente para verificar se há cadeias de caracteres perigosas na validação de script entre sites. Para obter mais informações, consulte How To: Prevent Cross-Site Scripting in ASP.NET.

Se a lógica de validação personalizada detectar um erro, esse método deverá retornar false e fornecer um valor em validationFailureIndex para indicar o ponto inicial do texto que causou o erro. O valor em validationFailureIndex deve ser 0 ou um inteiro positivo.

A lógica em uma verificação de validação de solicitação prossegue da seguinte maneira:

  • A HttpRequest classe executa uma verificação de remoção de caractere nulo nos dados de entrada.

  • A HttpRequest classe chama o IsValidRequestString método (a implementação padrão do método base) ou chama uma versão derivada do método .

  • Se IsValidRequestString o método retornar false para indicar uma falha de validação, ASP.NET construirá uma cadeia de caracteres de erro (se necessário) e gerará uma exceção HttpRequestValidationException .

Aplica-se a