Udostępnij przez


HttpEncoder Klasa

Definicja

Zapewnia logikę kodowania i dekodowania.

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

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.

Notatki dla spadkobierców

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).

Konstruktorów

Nazwa Opis
HttpEncoder()

Inicjuje nowe wystąpienie klasy HttpEncoder.

Właściwości

Nazwa Opis
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

Nazwa Opis
Equals(Object)

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

(Dziedziczone od Object)
GetHashCode()

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

(Dziedziczone od Object)
GetType()

Type Pobiera bieżące wystąpienie.

(Dziedziczone od 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 .

(Dziedziczone od Object)
ToString()

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

(Dziedziczone od 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 także