HttpEncoder クラス
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
エンコーディングとデコーディングのロジックを提供します。
public ref class HttpEncoder
public class HttpEncoder
type HttpEncoder = class
Public Class HttpEncoder
- 継承
-
HttpEncoder
- 派生
注釈
クラスには、、、などのクラスのメソッドによって使用されるエンコードおよびデコードロジックが含まれてい HttpUtility HttpServerUtility HttpResponseHeader ます。
クラスから継承し、 HttpEncoder その動作をオーバーライドして、ASP.NET の既定のエンコードおよびデコード動作をカスタマイズできます。 次 EncoderType に、クラスのプロパティを設定し HttpRuntimeSection て、カスタムクラスを構成します。
から派生するエンコードおよびデコード用のカスタムクラスでは HttpEncoder 、組み込みの ASP.NET エンコードおよびデコード動作をオーバーライドしたり、選択した部分のみを変更したりできます。
ASP.NET でのカスタムエンコードの種類を構成して、次のエンコーディング動作を置き換えるか補完することができます。
HTML エンコード
HTML 属性のエンコード
URL エンコード
URL パスのエンコード
HTTP ヘッダーの名前とヘッダー値のエンコード
既定では、ASP.NET アプリケーションは、 AntiXssEncoder すべての出力エンコーディングに対して型を使用するように構成されています。
アプリケーションレベルの Web.config ファイルからの次の例では、 AntiXssEncoder ASP.NET アプリケーションに対して型がどのように設定されているかを示しています。
<httpRuntime requestValidationMode="4.5" encoderType="System.Web.Security.AntiXss.AntiXssEncoder, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"/>
この例の構成設定は、 AntiXssEncoder アプリケーションですべての出力エンコーディングを実行するようにクラスを設定します。 詳細については、クラスの概要に関するトピックを参照してください AntiXssEncoder 。
注意 (継承者)
カスタムエンコーダクラスを作成し、基底クラスの基本メソッドをオーバーライドすると、派生エンコーダーは、オーバーライドされたメソッドのいずれかから例外をスローする場合があります。 ただし、次の場合、このような例外をスローすると、ASP.NET で予期しない動作が発生する可能性があります。
-ASP.NET が、カスタムエンコーダーからスローされた未処理の例外によって発生したエラーページを表示している場合、ASP.NET はカスタムエンコーダーを呼び出すことによってエラー出力をエンコードしようとしません。 これにより、再帰エラー条件が回避します。
-ASP.NET が IIS に HTTP ヘッダーを送信している場合、ASP.NET には未処理の例外のプロビジョニングがありません。 そのため、標準の ASP.NET エラーページが表示されます (構成設定によってこのページが表示される場合)。
コンストラクター
HttpEncoder() |
HttpEncoder クラスの新しいインスタンスを初期化します。 |
プロパティ
Current |
アプリケーションで使用する HttpEncoder の種類を取得または設定します。 |
Default |
ASP.NET の既定のエンコーダーへの参照を取得します。 |
メソッド
Equals(Object) |
指定されたオブジェクトが現在のオブジェクトと等しいかどうかを判断します。 (継承元 Object) |
GetHashCode() |
既定のハッシュ関数として機能します。 (継承元 Object) |
GetType() |
現在のインスタンスの Type を取得します。 (継承元 Object) |
HeaderNameValueEncode(String, String, String, String) |
ヘッダーの名前と値を、HTTP ヘッダーとして使用できる文字列にエンコードします。 |
HtmlAttributeEncode(String, TextWriter) |
受信した値を、一重または二重引用符を使用して区切られた HTML 属性に挿入できる文字列にエンコードします。 |
HtmlDecode(String, TextWriter) |
HTML エンコードされた文字列の値をデコードします。 |
HtmlEncode(String, TextWriter) |
文字列を HTML エンコードされた文字列にエンコードします。 |
JavaScriptStringEncode(String) |
文字列をエンコードします。 |
MemberwiseClone() |
現在の Object の簡易コピーを作成します。 (継承元 Object) |
ToString() |
現在のオブジェクトを表す文字列を返します。 (継承元 Object) |
UrlEncode(Byte[], Int32, Int32) |
URL では使用できない文字の配列を、16 進文字エンティティにエンコードします。 |
UrlPathEncode(String) |
URL のサブセクションをエンコードします。 |