WinHttpHandler クラス

定義

Windowsの WinHTTP インターフェイスに基づいてメッセージを処理します。 このクラスは、サーバー環境で使用することを目的としています。

public ref class WinHttpHandler : System::Net::Http::HttpMessageHandler
public class WinHttpHandler : System.Net.Http.HttpMessageHandler
type WinHttpHandler = class
    inherit HttpMessageHandler
Public Class WinHttpHandler
Inherits HttpMessageHandler
継承
WinHttpHandler

注釈

WinHttpHandler は、次のような HttpClientHandler他の既存のクラスに似ています。 WinHttpHandler はインスタンスの下にハンドラーを HttpClient 提供し、HTTP 要求をサーバーに送信し、サーバーの応答を受信するために使用されます。

WinHttpHandlerは、主に、ASP.NET Coreおよび HTTP サーバーと通信する他の .NET アプリケーションによってサーバー環境で使用されるように設計されています。 WinHttpHandler また、開発者は、クラスよりも HttpClientHandler アプリケーションの HTTP 通信をより細かく制御できます。 これにより、開発者はより高度な HTTP シナリオを実装したり、システムの既定値 (プロキシ設定、タイムアウト、サーバー SSL 証明書の検証など) を変更したりできます。

WinHttpHandler は、代わり HttpClientHandlerのものではありません。 代わりに、不十分なシナリオ HttpClientHandler に対して提供されるより高度なバージョンです。 WinHttpHandlerは、Windowsの WinHTTP インターフェイスにシン ラッパーとして実装され、Windows システムでのみサポートされます。

複数のハンドラーのチェーンを使用する場合は、 WinHttpHandler チェーンの下部に配置する必要があります。

このクラスは、NuGet パッケージとしてインストールすることにより、デスクトップ アプリでも使用可能です。 詳細については、「System.Net.Http.WinHttpHandler NuGet パッケージ」を参照してください。

.NET 5 以降では、 WinHttpHandler .NET ランタイムの一部として System.Net.Http.dll アセンブリには含まれません。 詳細については、「 .NET ランタイムから削除された WinHttpHandler」を参照してください。

コンストラクター

WinHttpHandler()

WinHttpHandler クラスの新しいインスタンスを初期化します。

プロパティ

AutomaticDecompression

HTTP コンテンツ応答を自動展開するためにハンドラーによって使用される展開メソッドの種類を取得または設定します。

AutomaticRedirection

ハンドラーが HTTP リダイレクト応答に従うかどうかを示す値を取得または設定します。

CheckCertificateRevocationList

SSL 証明書検証の間に証明書の失効リストを確認するかどうかを示す値を取得または設定します。

ClientCertificateOption

証明書を自動的に証明書ストアから取得するか、または呼び出し元が特定のクライアント証明書を渡すことを許可するかを示す値を、取得または設定します。

ClientCertificates

ClientCertificateOption プロパティが Manual に設定されている場合に、ハンドラーによるクライアント認証に使用されるクライアント認証 SSL 証明書のコレクションを取得します。

CookieContainer

マネージド クッキー コンテナー オブジェクトを取得または設定します。 このプロパティは、CookieUsePolicy プロパティが UseSpecifiedCookieContainer に設定されている場合にのみ使われます。 そうでない場合、SendAsync(HttpRequestMessage, CancellationToken) メソッドは例外をスローします。

CookieUsePolicy

Cookie を管理および使用する方法を示す値を取得または設定します。 開発者は、Cookie を無視する、ハンドラーで自動的に管理する、またはCookieContainer オブジェクトを使って手動で処理する、のいずれかを選ぶことができます。

DefaultProxyCredentials

認証プロキシに対してユーザーを認証するために使われる資格情報を取得または設定します。

EnableMultipleHttp2Connections

既存のすべての接続で同時ストリームの最大数に達したときに、追加の HTTP/2 接続を同じサーバーに確立できるかどうかを示す値を取得または設定します。

MaxAutomaticRedirections

許可される HTTP リダイレクトの最大数を取得または設定します。

MaxConnectionsPerServer

1 つのサーバーに対して許可されている TCP 接続の最大数を取得または設定します。

MaxResponseDrainSize

応答からドレインできる最大データ量 (バイト単位) を取得または設定します。

MaxResponseHeadersLength

サーバー応答のヘッダー部分の最大サイズ (バイト単位) を取得または設定します。

PreAuthenticate

ハンドラーが要求と共に認証ヘッダーを送信するかどうかを示す値を取得または設定します。

Properties

HttpClient 要求のカスタム プロパティの書き込み可能なディクショナリ (マップ) を取得します。 ディクショナリが初期化されて空になると、カスタム ハンドラーと特殊な処理のキーと値のペアを挿入してクエリを実行できます。

Proxy

WindowsProxyUsePolicy プロパティがカスタム プロキシを使うように設定されているときに、カスタム プロキシを取得また設定します。

ReceiveDataTimeout

サーバーからの応答のデータ部分の受信に対するタイムアウトを取得または設定します。

ReceiveHeadersTimeout

サーバーからの応答のヘッダーの受信に対するタイムアウトを取得または設定します。

SendTimeout

要求の送信に対するタイムアウトを取得または設定します。

ServerCertificateValidationCallback

サーバー証明書を検証するコールバック メソッドを取得または設定します。 このコールバックは、SSL ハンドシェイクの一部です。

ServerCredentials

サーバーに対する認証を行うためにクライアントが使う資格情報を取得または設定します。

SslProtocols

クライアントがサポートする TLS/SSL プロトコルのコレクションを取得または設定します。

TcpKeepAliveEnabled

TCP キープアライブが有効かどうかを示す値を取得または設定します。

TcpKeepAliveInterval

TCP キープアライブ間隔を取得または設定します。

TcpKeepAliveTime

TCP キープアライブ タイムアウトを取得または設定します。

WindowsProxyUsePolicy

プロキシの設定を取得または設定します。 このプロパティは、プロキシを無効にする、カスタム プロキシを使う、コンピューターでの WinHTTP または WinInet のプロキシ設定を使う、のいずれかに設定できます。

メソッド

Dispose()

HttpMessageHandler が使用しているアンマネージド リソースを解放し、マネージド リソースを破棄します。

(継承元 HttpMessageHandler)
Dispose(Boolean)

WinHttpHandler が使用しているアンマネージド リソースを解放します。オプションでマネージド リソースも破棄します。

Equals(Object)

指定されたオブジェクトが現在のオブジェクトと等しいかどうかを判断します。

(継承元 Object)
GetHashCode()

既定のハッシュ関数として機能します。

(継承元 Object)
GetType()

現在のインスタンスの Type を取得します。

(継承元 Object)
MemberwiseClone()

現在の Object の簡易コピーを作成します。

(継承元 Object)
Send(HttpRequestMessage, CancellationToken)

派生クラスでオーバーライドされた場合は、指定した要求とキャンセル トークンを使用して HTTP 要求を送信します。 それ以外の場合は、NotSupportedException をスローします。

(継承元 HttpMessageHandler)
SendAsync(HttpRequestMessage, CancellationToken)

非同期操作として HTTP 要求を送信します。

ToString()

現在のオブジェクトを表す文字列を返します。

(継承元 Object)

適用対象