HttpEncoder クラス

定義

エンコーディングとデコーディングのロジックを提供します。Provides encoding and decoding logic.

public ref class HttpEncoder
public class HttpEncoder
type HttpEncoder = class
Public Class HttpEncoder
継承
HttpEncoder
派生

注釈

クラスにはHttpUtility、、 HttpServerUtilityHttpResponseHeaderなどのクラスのメソッドによって使用されるエンコードおよびデコードロジックが含まれています。The class contains encoding and decoding logic that is used by methods in classes such as HttpUtility, HttpServerUtility, and HttpResponseHeader.

HttpEncoderクラスから継承し、その動作をオーバーライドして、ASP.NET の既定のエンコードおよびデコード動作をカスタマイズできます。You can inherit from the HttpEncoder class and override its behavior to customize the default encoding and decoding behavior of ASP.NET. 次に、 HttpRuntimeSectionクラスEncoderTypeのプロパティを設定して、カスタムクラスを構成します。You then set the EncoderType property of the HttpRuntimeSection class to configure your custom class.

からHttpEncoder派生するエンコードおよびデコード用のカスタムクラスでは、組み込みの ASP.NET エンコードおよびデコード動作をオーバーライドしたり、選択した部分のみを変更したりできます。A custom class for encoding and decoding that derives from HttpEncoder can override the built-in ASP.NET encoding and decoding behavior or change only selected aspects of it.

ASP.NET でのカスタムエンコードの種類を構成して、次のエンコーディング動作を置き換えるか補完することができます。You can configure the custom encoding type for in ASP.NET to replace or supplement the following encoding behavior:

  • HTML エンコードHTML encoding

  • HTML 属性のエンコードHTML attribute encoding

  • URL エンコードURL encoding

  • URL パスのエンコードURL path encoding

  • HTTP ヘッダーの名前とヘッダー値のエンコードHTTP header name and header value encoding

既定では、ASP.NET アプリケーションは、すべてのAntiXssEncoder出力エンコーディングに対して型を使用するように構成されています。By default, ASP.NET applications are configured to use the AntiXssEncoder type for all output encoding.

アプリケーションレベルの web.config ファイルの次の例は、ASP.NET アプリケーションに対しAntiXssEncoderて型がどのように設定されているかを示しています。The following example from an application-level Web.config file shows how the AntiXssEncoder type is set for an ASP.NET application:

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

この例の構成設定は、アプリケーションAntiXssEncoderですべての出力エンコーディングを実行するようにクラスを設定します。The configuration setting in the example sets the AntiXssEncoder class to perform all output encoding in the application. 詳細については、 AntiXssEncoderクラスの概要に関するトピックを参照してください。For more information, see the AntiXssEncoder class overview.

注意 (継承者)

カスタムエンコーダクラスを作成し、基底クラスの基本メソッドをオーバーライドすると、派生エンコーダーは、オーバーライドされたメソッドのいずれかから例外をスローする場合があります。When you create a custom encoder class and override the base methods of the base class, the derived encoder might throw an exception from any of the overridden methods. ただし、次の場合、このような例外をスローすると、ASP.NET で予期しない動作が発生する可能性があります。However, in the following cases throwing such an exception could lead to unexpected behavior in ASP.NET:

-ASP.NET が、カスタムエンコーダーからスローされた未処理の例外によって発生したエラーページを表示している場合、ASP.NET はカスタムエンコーダーを呼び出すことによってエラー出力をエンコードしようとしません。- If ASP.NET is rendering an error page that is caused by an unhandled exception that was thrown from a custom encoder, ASP.NET does not attempt to encode its error output by calling into the custom encoder. これにより、再帰エラー条件が回避します。This avoids recursive error conditions.

-ASP.NET が IIS に HTTP ヘッダーを送信している場合、ASP.NET には未処理の例外のプロビジョニングがありません。- When ASP.NET is sending HTTP headers to IIS, ASP.NET has no provision for unhandled exceptions. そのため、標準の ASP.NET エラーページが表示されます (構成設定によってこのページが表示される場合)。Therefore, the standard ASP.NET error page will be rendered (if configuration settings allows this page to be displayed).

コンストラクター

HttpEncoder()

HttpEncoder クラスの新しいインスタンスを初期化します。Initializes a new instance of the HttpEncoder class.

プロパティ

Current

アプリケーションで使用する HttpEncoder の種類を取得または設定します。Gets or set the HttpEncoder type that will be used in an application.

Default

ASP.NET の既定のエンコーダーへの参照を取得します。Gets a reference to the default encoder for ASP.NET.

メソッド

Equals(Object)

指定されたオブジェクトが現在のオブジェクトと等しいかどうかを判定します。Determines whether the specified object is equal to the current object.

(継承元 Object)
GetHashCode()

既定のハッシュ関数として機能します。Serves as the default hash function.

(継承元 Object)
GetType()

現在のインスタンスの Type を取得します。Gets the Type of the current instance.

(継承元 Object)
HeaderNameValueEncode(String, String, String, String)

ヘッダーの名前と値を、HTTP ヘッダーとして使用できる文字列にエンコードします。Encodes a header name and value into a string that can be used as an HTTP header.

HtmlAttributeEncode(String, TextWriter)

受信した値を、一重または二重引用符を使用して区切られた HTML 属性に挿入できる文字列にエンコードします。Encodes an incoming value into a string that can be inserted into an HTML attribute that is delimited by using single or double quotation marks.

HtmlDecode(String, TextWriter)

HTML エンコードされた文字列の値をデコードします。Decodes a value from an HTML-encoded string.

HtmlEncode(String, TextWriter)

文字列を HTML エンコードされた文字列にエンコードします。Encodes a string into an HTML-encoded string.

JavaScriptStringEncode(String)

文字列をエンコードします。Encodes a string.

MemberwiseClone()

現在の Object の簡易コピーを作成します。Creates a shallow copy of the current Object.

(継承元 Object)
ToString()

現在のオブジェクトを表す string を返します。Returns a string that represents the current object.

(継承元 Object)
UrlEncode(Byte[], Int32, Int32)

URL では使用できない文字の配列を、16 進文字エンティティにエンコードします。Encodes an array of characters that are not allowed in a URL into a hexadecimal character-entity equivalent.

UrlPathEncode(String)

URL のサブセクションをエンコードします。Encodes a subsection of a URL.

適用対象

こちらもご覧ください