SocketsHttpHandler.RequestHeaderEncodingSelector プロパティ
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
要求ヘッダー値をエンコードする 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 。
例外
現在のインスタンスで操作が既に開始されています。
現在のインスタンスが破棄されました。
注釈
エンコードを指定する場合、一般に、 ASCII、 Latin1、または UTF8のいずれかのエンコード スキームを使用することが期待されます。 その他のエンコード スキームは、密輸攻撃を要求する可能性があります。
Caution
特に、固定マルチバイト エンコード スキーム ( Unicode や UTF32など) は使用しないでください。バイナリ表現が誤って解釈され、プロトコルが中断される可能性が高くなります。 たとえば、 ✊ の一部は、ヘッダー値を終了する新しい行 (\n) として解釈される場合があります。
エンコードを指定する場合は、エンコードを介して値が表現可能であり、サーバーが使用されるエンコードに同意していることを確認する必要があります。 それ以外の場合、値は破損します。 たとえば、バイトのセットは有効な Latin1 シーケンスと見なされるため、UTF-8 でエンコードされたヘッダー値で応答するサーバーでは、応答が自動的に破損している可能性があります。