HttpEncoder Třída
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Poskytuje logiku kódování a dekódování.
public ref class HttpEncoder
public class HttpEncoder
type HttpEncoder = class
Public Class HttpEncoder
- Dědičnost
-
HttpEncoder
- Odvozené
Poznámky
Třída obsahuje kódování a dekódovací logiku, která je používána metodami ve třídách, jako HttpUtilityje , HttpServerUtilitya HttpResponseHeader.
Můžete dědit z HttpEncoder třídy a přepsat jeho chování přizpůsobit výchozí kódování a dekódování chování ASP.NET. Potom nastavíte EncoderType vlastnost HttpRuntimeSection třídy tak, aby nakonfigurovali vlastní třídu.
Vlastní třída pro kódování a dekódování, která je odvozena od HttpEncoder , může přepsat integrované kódování ASP.NET kódování a dekódování chování nebo změnit pouze vybrané aspekty.
Můžete nakonfigurovat vlastní typ kódování pro ASP.NET nahradit nebo doplnit následující chování kódování:
Kódování HTML
Kódování atributů HTML
Kódování adresy URL
Kódování cesty url
Název hlavičky HTTP a kódování hodnoty hlavičky
Ve výchozím nastavení jsou ASP.NET aplikace nakonfigurované tak, aby používaly AntiXssEncoder typ pro veškeré kódování výstupu.
Následující příklad ze souboru Web.config na úrovni aplikace ukazuje, jak AntiXssEncoder je typ nastaven pro ASP.NET aplikaci:
<httpRuntime requestValidationMode="4.5" encoderType="System.Web.Security.AntiXss.AntiXssEncoder, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"/>
Nastavení konfigurace v příkladu nastaví AntiXssEncoder třídu tak, aby prováděla veškeré kódování výstupu v aplikaci. Další informace najdete v přehledu AntiXssEncoder třídy.
Poznámky pro dědice
Když vytvoříte vlastní třídu kodéru a přepíšete základní metody základní třídy, odvozený kodér může vyvolat výjimku z některé z přepsaných metod. V následujících případech však vyvolání takové výjimky může vést k neočekávanému chování v ASP.NET:
Pokud ASP.NET vykresluje chybovou stránku, která je způsobena neošetřenou výjimkou vyvolanou z vlastního kodéru, ASP.NET se nepokoušá kódovat výstup chyby voláním do vlastního kodéru. Tím se zabrání rekurzivním chybám.
Když ASP.NET odesílá hlavičky HTTP do služby IIS, ASP.NET nemá žádné zřizování pro neošetřené výjimky. Proto se zobrazí standardní chybová stránka ASP.NET (pokud nastavení konfigurace umožňuje zobrazení této stránky).
Konstruktory
| Name | Description |
|---|---|
| HttpEncoder() |
Inicializuje novou instanci HttpEncoder třídy. |
Vlastnosti
| Name | Description |
|---|---|
| Current |
Získá nebo nastaví HttpEncoder typ, který se použije v aplikaci. |
| Default |
Získá odkaz na výchozí kodér pro ASP.NET. |
Metody
| Name | Description |
|---|---|
| Equals(Object) |
Určuje, zda je zadaný objekt roven aktuálnímu objektu. (Zděděno od Object) |
| GetHashCode() |
Slouží jako výchozí funkce hash. (Zděděno od Object) |
| GetType() |
Získá Type aktuální instance. (Zděděno od Object) |
| HeaderNameValueEncode(String, String, String, String) |
Zakóduje název a hodnotu hlavičky do řetězce, který lze použít jako hlavičku HTTP. |
| HtmlAttributeEncode(String, TextWriter) |
Zakóduje příchozí hodnotu do řetězce, který lze vložit do atributu HTML, který je oddělený jednoduchými nebo dvojitými uvozovkami. |
| HtmlDecode(String, TextWriter) |
Dekóduje hodnotu z řetězce s kódováním HTML. |
| HtmlEncode(String, TextWriter) |
Zakóduje řetězec do řetězce s kódováním HTML. |
| JavaScriptStringEncode(String) |
Zakóduje řetězec. |
| MemberwiseClone() |
Vytvoří mělkou kopii aktuálního Object. (Zděděno od Object) |
| ToString() |
Vrátí řetězec, který představuje aktuální objekt. (Zděděno od Object) |
| UrlEncode(Byte[], Int32, Int32) |
Zakóduje pole znaků, které nejsou povoleny v adrese URL, do šestnáctkového ekvivalentu znakové entity. |
| UrlPathEncode(String) |
Zakóduje pododdíl adresy URL. |