RequestValidator.IsValidRequestString Yöntem

Tanım

HTTP istek verilerini içeren bir dizeyi doğrular.

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

Parametreler

context
HttpContext

Geçerli isteğin bağlamı.

value
String

Doğrulanması gereken HTTP isteği verileri.

requestValidationSource
RequestValidationSource

Doğrulanan istek verilerinin kaynağını temsil eden bir numaralandırma. Numaralandırma için olası değerler şunlardır:

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

Doğrulanması gereken öğenin istek koleksiyonundaki anahtar. Bu parametre isteğe bağlıdır. Doğrulanması gereken veriler bir koleksiyondan alınırsa bu parametre kullanılır. Doğrulanacak veriler bir koleksiyondan değilse, collectionKey olabilir null.

validationFailureIndex
Int32

Bu yöntem döndürdüğünde, istek koleksiyonundaki sorunlu veya geçersiz metnin sıfır tabanlı başlangıç noktasını gösterir. Bu parametre, başlatmadan iletilir.

Döndürülenler

Boolean

true doğrulanacak dize geçerliyse; aksi takdirde , false.

Açıklamalar

İstek verilerinin özel doğrulamasını gerçekleştirmek için bu yöntemi uygularsınız. Yöntemin IsValidRequestString(HttpContext, String, RequestValidationSource, String, Int32) temel davranışı, ASP.NET siteler arası betik doğrulamasında tehlikeli dizeleri denetlemek için dahili olarak uyguladığı davranış gibidir. Daha fazla bilgi için bkz. How To: Prevent Cross-Site Scripting in ASP.NET.

Özel doğrulama mantığı bir hata algılarsa, bu yöntem döndürmelidir false ve hataya neden olan metnin başlangıç noktasını belirtmek için içinde validationFailureIndex bir değer sağlamalıdır. içindeki validationFailureIndex değeri 0 veya pozitif bir tamsayı olmalıdır.

İstek doğrulama denetimindeki mantık aşağıdaki gibi devam eder:

  • sınıfı HttpRequest , gelen veriler üzerinde null karakter kaldırma denetimi gerçekleştirir.

  • HttpRequest sınıfı IsValidRequestString yöntemini (temel yöntemin varsayılan uygulaması) veya yönteminin türetilmiş bir sürümünü çağırır.

  • Yöntem bir doğrulama hatası göstermek için döndürülüyorsa IsValidRequestString false, ASP.NET bir hata dizesi oluşturur (gerekirse) ve bir HttpRequestValidationException özel durum oluşturur.

Şunlara uygulanır