Share via


HttpEncoder Klasse

Definition

Stellt Codierungs- und Decodierungslogik bereit.

public ref class HttpEncoder
public class HttpEncoder
type HttpEncoder = class
Public Class HttpEncoder
Vererbung
HttpEncoder
Abgeleitet

Hinweise

Die -Klasse enthält Codierungs- und Decodierungslogik, die von Methoden in Klassen wie HttpUtility, HttpServerUtilityund HttpResponseHeaderverwendet wird.

Sie können von der -Klasse erben HttpEncoder und deren Verhalten überschreiben, um das Standardcodierungs- und Decodierungsverhalten von ASP.NET anzupassen. Anschließend legen Sie die EncoderType -Eigenschaft der HttpRuntimeSection -Klasse fest, um Ihre benutzerdefinierte Klasse zu konfigurieren.

Eine benutzerdefinierte Klasse für die Codierung und Decodierung, die von abgeleitet wird HttpEncoder , kann das integrierte ASP.NET Codierungs- und Decodierungsverhalten überschreiben oder nur ausgewählte Aspekte davon ändern.

Sie können den benutzerdefinierten Codierungstyp für in ASP.NET konfigurieren, um das folgende Codierungsverhalten zu ersetzen oder zu ergänzen:

  • HTML-Codierung

  • HTML-Attributcodierung

  • URL-Codierung

  • URL-Pfadcodierung

  • HTTP-Headernamen- und Headerwertcodierung

Standardmäßig sind ASP.NET Anwendungen so konfiguriert, dass sie den Typ für die AntiXssEncoder gesamte Ausgabecodierung verwenden.

Das folgende Beispiel aus einer Web.config-Datei auf Anwendungsebene zeigt, wie der AntiXssEncoder Typ für eine ASP.NET-Anwendung festgelegt wird:

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

Die Konfigurationseinstellung im Beispiel legt die -Klasse so fest, dass die AntiXssEncoder gesamte Ausgabecodierung in der Anwendung ausgeführt wird. Weitere Informationen finden Sie in der AntiXssEncoder Klassenübersicht.

Hinweise für Vererber

Wenn Sie eine benutzerdefinierte Encoderklasse erstellen und die Basismethoden der Basisklasse überschreiben, löst der abgeleitete Encoder möglicherweise eine Ausnahme von einer der überschriebenen Methoden aus. In den folgenden Fällen kann das Auslösen einer solchen Ausnahme jedoch zu unerwartetem Verhalten in ASP.NET führen:

  • Wenn ASP.NET eine Fehlerseite rendert, die durch eine nicht behandelte Ausnahme verursacht wird, die von einem benutzerdefinierten Encoder ausgelöst wurde, versucht ASP.NET nicht, die Fehlerausgabe durch Aufrufen des benutzerdefinierten Encoders zu codieren. Dadurch werden rekursive Fehlerbedingungen vermieden.

  • Wenn ASP.NET HTTP-Header an IIS sendet, hat ASP.NET keine Bereitstellung für nicht behandelte Ausnahmen. Daher wird die Standardfehlerseite ASP.NET gerendert (wenn die Konfigurationseinstellungen die Anzeige dieser Seite ermöglichen).

Konstruktoren

HttpEncoder()

Initialisiert eine neue Instanz der HttpEncoder-Klasse.

Eigenschaften

Current

Ruft den HttpEncoder-Typ ab, der in einer Anwendung verwendet wird, oder legt ihn fest.

Default

Ruft einen Verweis auf den Standardcodierer für ASP.NET ab.

Methoden

Equals(Object)

Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist.

(Geerbt von Object)
GetHashCode()

Fungiert als Standardhashfunktion.

(Geerbt von Object)
GetType()

Ruft den Type der aktuellen Instanz ab.

(Geerbt von Object)
HeaderNameValueEncode(String, String, String, String)

Codiert einen Headernamen und einen Wert in eine Zeichenfolge, die als HTTP-Header verwendet werden kann.

HtmlAttributeEncode(String, TextWriter)

Codiert einen eingehenden Wert in eine Zeichenfolge, die in ein HTML-Attribut eingefügt werden kann, das durch einfache oder doppelte Anführungszeichen getrennt wird.

HtmlDecode(String, TextWriter)

Hebt die Codierung eines Werts von einer HTML-codierten Zeichenfolge auf.

HtmlEncode(String, TextWriter)

Codiert eine Zeichenfolge in eine HTML-codierte Zeichenfolge.

JavaScriptStringEncode(String)

Codiert eine Zeichenfolge.

MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.

(Geerbt von Object)
ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.

(Geerbt von Object)
UrlEncode(Byte[], Int32, Int32)

Codiert ein Array von Zeichen, die in einer URL nicht zulässig sind, in eine hexadezimale Zeichenentitätsentsprechung.

UrlPathEncode(String)

Codiert einen Unterabschnitt einer URL.

Gilt für:

Weitere Informationen