SocketsHttpHandler.RequestHeaderEncodingSelector プロパティ

定義

要求ヘッダー値をエンコードする Encoding を選択するコールバックを取得または設定します。

public:
 property System::Net::Http::HeaderEncodingSelector<System::Net::Http::HttpRequestMessage ^> ^ RequestHeaderEncodingSelector { System::Net::Http::HeaderEncodingSelector<System::Net::Http::HttpRequestMessage ^> ^ get(); void set(System::Net::Http::HeaderEncodingSelector<System::Net::Http::HttpRequestMessage ^> ^ value); };
public System.Net.Http.HeaderEncodingSelector<System.Net.Http.HttpRequestMessage>? RequestHeaderEncodingSelector { get; set; }
member this.RequestHeaderEncodingSelector : System.Net.Http.HeaderEncodingSelector<System.Net.Http.HttpRequestMessage> with get, set
Public Property RequestHeaderEncodingSelector As HeaderEncodingSelector(Of HttpRequestMessage)

プロパティ値

指定した要求ヘッダー名の値をエンコードする Encoding を選択するヘッダー エンコード セレクター コールバック。既定の動作を示す null

例外

現在のインスタンスで操作が既に開始されています。

現在のインスタンスが破棄されました。

注釈

エンコードを指定する場合、一般に、 ASCIILatin1、または UTF8のいずれかのエンコード スキームを使用することが期待されます。 その他のエンコード スキームは、密輸攻撃を要求する可能性があります。

Caution

特に、固定マルチバイト エンコード スキーム ( UnicodeUTF32など) は使用しないでください。バイナリ表現が誤って解釈され、プロトコルが中断される可能性が高くなります。 たとえば、 の一部は、ヘッダー値を終了する新しい行 (\n) として解釈される場合があります。

エンコードを指定する場合は、エンコードを介して値が表現可能であり、サーバーが使用されるエンコードに同意していることを確認する必要があります。 それ以外の場合、値は破損します。 たとえば、バイトのセットは有効な Latin1 シーケンスと見なされるため、UTF-8 でエンコードされたヘッダー値で応答するサーバーでは、応答が自動的に破損している可能性があります。

適用対象