Udostępnij za pośrednictwem


HttpEncoder Klasa

Definicja

Zapewnia logikę kodowania i dekodowania.

public ref class HttpEncoder
public class HttpEncoder
type HttpEncoder = class
Public Class HttpEncoder
Dziedziczenie
HttpEncoder
Pochodne

Uwagi

Klasa zawiera logikę kodowania i dekodowania, która jest używana przez metody w klasach, takich jak HttpUtility, HttpServerUtilityi HttpResponseHeader.

Możesz dziedziczyć z HttpEncoder klasy i zastąpić jego zachowanie, aby dostosować domyślne zachowanie kodowania i dekodowania ASP.NET. Następnie należy ustawić EncoderType właściwość HttpRuntimeSection klasy, aby skonfigurować klasę niestandardową.

Niestandardowa klasa kodowania i dekodowania, która pochodzi z HttpEncoder metody , może zastąpić wbudowane ASP.NET zachowania kodowania i dekodowania lub zmienić tylko wybrane aspekty.

W ASP.NET można skonfigurować niestandardowy typ kodowania, aby zastąpić lub uzupełnić następujące zachowanie kodowania:

  • Kodowanie HTML

  • Kodowanie atrybutów HTML

  • Kodowanie adresów URL

  • Kodowanie ścieżki adresu URL

  • Kodowanie nazwy nagłówka HTTP i wartości nagłówka

Domyślnie aplikacje ASP.NET są skonfigurowane do używania AntiXssEncoder typu dla wszystkich kodowań wyjściowych.

Poniższy przykład z pliku Web.config na poziomie aplikacji pokazuje, jak AntiXssEncoder typ jest ustawiony dla aplikacji ASP.NET:

<httpRuntime requestValidationMode="4.5" encoderType="System.Web.Security.AntiXss.AntiXssEncoder, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"/>

Ustawienie konfiguracji w przykładzie ustawia klasę AntiXssEncoder tak, aby wykonywała wszystkie kodowanie wyjściowe w aplikacji. Aby uzyskać więcej informacji, zobacz AntiXssEncoder omówienie klasy.

Uwagi dotyczące dziedziczenia

Podczas tworzenia klasy kodera niestandardowego i zastępowania metod bazowych klasy bazowej koder pochodny może zgłosić wyjątek od dowolnej z przesłoniętych metod. Jednak w następujących przypadkach zgłaszanie takiego wyjątku może prowadzić do nieoczekiwanego zachowania w ASP.NET:

  • Jeśli ASP.NET renderuje stronę błędu spowodowaną nieobsługiwanym wyjątkiem zgłoszonym z kodera niestandardowego, ASP.NET nie próbuje kodować danych wyjściowych błędu przez wywołanie kodera niestandardowego. Pozwala to uniknąć cyklicznych warunków błędu.

  • Gdy ASP.NET wysyła nagłówki HTTP do usług IIS, ASP.NET nie ma aprowizacji dla nieobsługiwanych wyjątków. W związku z tym zostanie wyrenderowana standardowa strona błędu ASP.NET (jeśli ustawienia konfiguracji zezwalają na wyświetlanie tej strony).

Konstruktory

HttpEncoder()

Inicjuje nowe wystąpienie klasy HttpEncoder.

Właściwości

Current

Pobiera lub ustawia HttpEncoder typ, który będzie używany w aplikacji.

Default

Pobiera odwołanie do kodera domyślnego dla ASP.NET.

Metody

Equals(Object)

Określa, czy dany obiekt jest taki sam, jak bieżący obiekt.

(Odziedziczone po Object)
GetHashCode()

Służy jako domyślna funkcja skrótu.

(Odziedziczone po Object)
GetType()

Type Pobiera bieżące wystąpienie.

(Odziedziczone po Object)
HeaderNameValueEncode(String, String, String, String)

Koduje nazwę nagłówka i wartość w ciągu, który może być używany jako nagłówek HTTP.

HtmlAttributeEncode(String, TextWriter)

Koduje wartość przychodzącą do ciągu, który można wstawić do atrybutu HTML rozdzielanego za pomocą pojedynczych lub podwójnych cudzysłowów.

HtmlDecode(String, TextWriter)

Dekoduje wartość z ciągu zakodowanego w formacie HTML.

HtmlEncode(String, TextWriter)

Koduje ciąg do ciągu zakodowanego w języku HTML.

JavaScriptStringEncode(String)

Koduje ciąg.

MemberwiseClone()

Tworzy płytkią kopię bieżącego Objectelementu .

(Odziedziczone po Object)
ToString()

Zwraca ciąg reprezentujący bieżący obiekt.

(Odziedziczone po Object)
UrlEncode(Byte[], Int32, Int32)

Koduje tablicę znaków, które nie są dozwolone w adresie URL do odpowiednika szesnastkowej jednostki znaków.

UrlPathEncode(String)

Koduje podsekcję adresu URL.

Dotyczy

Zobacz też