System.Net.Http 名前空間

最新の HTTP アプリケーション用のプログラミング インターフェイスを提供します。

クラス

名前 説明
ByteArrayContent

バイト配列に基づいて HTTP コンテンツを提供します。

DelegatingHandler

HTTP 応答メッセージの処理を、内部ハンドラーと呼ばれる別のハンドラーに委任する HTTP ハンドラーの型。

FormUrlEncodedContent

application/x-www-form-urlencoded MIME タイプを使用してエンコードされた名前/値タプルのコンテナー。

HttpClient

URI によって識別されるリソースから HTTP 要求を送信し、HTTP 応答を受信するためのクラスを提供します。

HttpClientHandler

.NET Framework で HttpClient によって使用される既定のメッセージ ハンドラー。

HttpContent

HTTP エンティティ本体とコンテンツ ヘッダーを表す基本クラス。

HttpMessageHandler

HTTP メッセージ ハンドラーの基本型。

HttpMessageInvoker

アプリケーションが HTTP ハンドラー チェーンで SendAsync(HttpRequestMessage, CancellationToken) メソッドを呼び出すことを許可する特殊なクラス。

HttpMethod

標準の HTTP メソッドを取得および比較し、新しい HTTP メソッドを作成するためのヘルパー クラス。

HttpRequestException

HttpClient および HttpMessageHandler クラスによってスローされる例外の基本クラス。

HttpRequestMessage

HTTP 要求メッセージを表します。

HttpResponseMessage

状態コードとデータを含む HTTP 応答メッセージを表します。

MessageProcessingHandler

要求メッセージまたは応答メッセージの小さな処理のみを実行するハンドラーの基本型。

MultipartContent

multipart/* コンテンツ タイプ仕様を使用してシリアル化される HttpContent オブジェクトのコレクションを提供します。

MultipartFormDataContent

マルチパート/フォーム データ MIME タイプを使用してエンコードされたコンテンツのコンテナーを提供します。

ReadOnlyMemoryContent

ReadOnlyMemory<T>に基づいて HTTP コンテンツを提供します。

RtcRequestFactory

最新の HTTP アプリケーション用のプログラミング インターフェイスを提供します。

StreamContent

ストリームに基づいて HTTP コンテンツを提供します。

StringContent

文字列に基づいて HTTP コンテンツを提供します。

WebRequestHandler

Windows ストア アプリやその他の環境では使用できないデスクトップ固有の機能を提供します。

列挙型

名前 説明
ClientCertificateOption

クライアント証明書を提供する方法を指定します。

HttpCompletionOption

応答が使用可能になるとすぐに、またはコンテンツを含む応答メッセージ全体を読み取った後に、HttpClient 操作を完了と見なす必要があるかどうかを示します。

注釈

System.Net.Http名前空間は、次のコンポーネントを提供するように設計されています。

  • ユーザーが HTTP 経由で最新の Web サービスを使用できるようにする HTTP クライアント コンポーネント。
  • クライアントとサーバーの両方で使用できる HTTP コンポーネント (HTTP ヘッダーやメッセージなど)。 これにより、HTTP 経由の最新の Web サービスのクライアント側とサーバー側の両方で一貫したプログラミング モデルが提供されます。

System.Net.Http名前空間と関連するSystem.Net.Http.Headers名前空間には、次のコンポーネントのセットが用意されています。

  • HttpClient - HTTP 経由で要求を送受信するために使用されるプライマリ クラス。
  • HttpRequestMessage および HttpResponseMessage - IETF の RFC 2616 で定義されている HTTP メッセージ。
  • HttpHeaders - IETF によって RFC 2616 で定義されている HTTP ヘッダー。
  • HttpClientHandler - HTTP 応答メッセージの生成を担当する HTTP ハンドラー。

使用できるさまざまな HTTP メッセージ ハンドラーがあります。

  • DelegatingHandler - ハンドラーをハンドラー チェーンにプラグインするために使用されるクラス。
  • HttpMessageHandler - そこから派生する単純なクラスは、ほとんどのアプリケーションで最も一般的な要件をサポートします。
  • HttpClientHandler - HTTP トランスポート操作を実際に処理するハンドラー チェーンの下部で動作するクラス。

HTTP メッセージの内容は、RFC 2616 で定義されているエンティティ本体に対応します。

HTTP コンテンツには、次のクラスを使用できます。

  • ByteArrayContent - バイト配列に基づく HTTP コンテンツ。
  • FormUrlEncodedContent - application/x-www-form-urlencoded MIME タイプを使用してエンコードされた名前/値タプルの HTTP コンテンツ。
  • MultipartContent - マルチパート/* コンテンツ タイプ仕様を使用してシリアル化される HTTP コンテンツ。
  • MultipartFormDataContent - マルチパート/フォーム データ MIME タイプを使用してエンコードされた HTTP コンテンツ。
  • StreamContent - ストリームに基づく HTTP コンテンツ。
  • StringContent - 文字列に基づく HTTP コンテンツ。

アプリで System.Net.HttpSystem.Net.Http.Headers 名前空間を使用し、大量のデータ (50 メガバイト以上) をダウンロードする場合は、それらのダウンロードをストリーミングし、既定のバッファリングを使用しないようにする必要があります。 既定のバッファリングを使用すると、クライアントのメモリ使用量が非常に大きくなり、パフォーマンスが大幅に低下する可能性があります。

こちらもご覧ください