System.Net.Http 名前空間

System.Net.Http 名前空間は、最新の HTTP アプリケーション用のプログラミング インターフェイスを提供します。 The System.Net.Http namespace provides a programming interface for modern HTTP applications.

クラス

ByteArrayContent

バイト配列に基づく HTTP コンテンツを提供します。Provides HTTP content based on a byte array.

CFNetworkHandler
DelegatingHandler

内部ハンドラーと呼ばれる、別のハンドラーへ HTTP 応答メッセージの処理をデリゲートする HTTP ハンドラーの型。A type for HTTP handlers that delegate the processing of HTTP response messages to another handler, called the inner handler.

FormUrlEncodedContent

application/x-www-form-urlencoded MIME 型を使用してエンコードされた名前と値の組のコンテナー。A container for name/value tuples encoded using application/x-www-form-urlencoded MIME type.

HttpClient

URI で識別されるリソースに HTTP 要求を送信し、そのリソースから HTTP 応答を受信するための基本クラスを提供します。Provides a base class for sending HTTP requests and receiving HTTP responses from a resource identified by a URI.

HttpClientFactoryExtensions

IHttpClientFactory の拡張メソッド。Extensions methods for IHttpClientFactory.

HttpClientHandler

.NET Framework および .NET Core 2.0 以前の HttpClient で使用される既定のメッセージ ハンドラー。The default message handler used by HttpClient in .NET Framework and .NET Core 2.0 and earlier.

HttpContent

HTTP エンティティ本体およびコンテンツ ヘッダーを表す基本クラス。A base class representing an HTTP entity body and content headers.

HttpMessageHandler

HTTP メッセージ ハンドラーの基本データ型。A base type for HTTP message handlers.

HttpMessageHandlerFactoryExtensions

IHttpMessageHandlerFactory の拡張メソッド。Extensions methods for IHttpMessageHandlerFactory.

HttpMessageInvoker

アプリケーションが HTTP ハンドラー チェーンに対して SendAsync(HttpRequestMessage, CancellationToken) メソッドを呼び出せるようにする専用クラス。A specialty class that allows applications to call the SendAsync(HttpRequestMessage, CancellationToken) method on an HTTP handler chain.

HttpMethod

標準的な HTTP メソッドの取得と比較を行い、新しい HTTP メソッドを作成するためのヘルパー クラス。A helper class for retrieving and comparing standard HTTP methods and for creating new HTTP methods.

HttpRequestException

HttpClientHttpMessageHandler クラスによってスローされる例外の基本クラス。A base class for exceptions thrown by the HttpClient and HttpMessageHandler classes.

HttpRequestMessage

HTTP 要求メッセージを表します。Represents a HTTP request message.

HttpResponseMessage

ステータス コードとデータを含む HTTP 応答メッセージを表します。Represents a HTTP response message including the status code and data.

MessageProcessingHandler

要求メッセージと応答メッセージの一部の小さな処理のみを行うハンドラーの基本データ型。A base type for handlers which only do some small processing of request and/or response messages.

MultipartContent

multipart/* のコンテンツ タイプの指定を使用してシリアル化される HttpContent オブジェクトのコレクションを提供します。Provides a collection of HttpContent objects that get serialized using the multipart/* content type specification.

MultipartFormDataContent

MIME の種類 multipart/form-data を使用してエンコードされたコンテンツのコンテナーを提供します。Provides a container for content encoded using multipart/form-data MIME type.

NSUrlSessionHandler

Xamarin スタックを使用する Apple プラットフォーム (iOS、macOS、watchOS、tvOS) の  HttpClient  によって使用される既定のメッセージ ハンドラーThe default message handler used by HttpClient on Apple platforms using the Xamarin stack (iOS, macOS, watchOS, tvOS)

ReadOnlyMemoryContent
RtcRequestFactory
SocketsHttpHandler

.NET Core 2.1 以降の HttpClient で使用される既定のメッセージ ハンドラーを提供します。Provides the default message handler used by HttpClient in .NET Core 2.1 and later.

StreamContent

ストリームに基づく HTTP コンテンツを提供します。Provides HTTP content based on a stream.

StringContent

文字列に基づいて HTTP コンテンツを提供します。Provides HTTP content based on a string.

WebRequestHandler

Windows ストア アプリや他の環境では利用できないデスクトップ固有の機能を提供します。Provides desktop-specific features not available to Windows Store apps or other environments.

WinHttpHandler

WinHttpHandler は Windows の WinHTTP インターフェイスに基づく特殊なメッセージ ハンドラーであり、サーバー環境で使うことを意図されています。WinHttpHandler is a specialty message handler based on the WinHTTP interface of Windows and is intended for use in server environments. このクラスは、NuGet パッケージとしてインストールすることにより、デスクトップ アプリでも使用可能です。This class is also available for use in Desktop apps by installing it as a NuGet package. デスクトップ アプリで使うためのこのクラスのインストールについて詳しくは、System.Net.Http.WinHttpHandler をご覧ください。For more information about installing this class for use in Desktop apps, see System.Net.Http.WinHttpHandler.

インターフェイス

IHttpClientFactory

特定の論理名のカスタム構成を使用して HttpClient インスタンスを作成できるコンポーネントのファクトリ抽象化。A factory abstraction for a component that can create HttpClient instances with custom configuration for a given logical name.

IHttpMessageHandlerFactory

特定の論理名のカスタム構成を使用して HttpMessageHandler インスタンスを作成できるコンポーネントのファクトリ抽象化。A factory abstraction for a component that can create HttpMessageHandler instances with custom configuration for a given logical name.

列挙型

ClientCertificateOption

クライアント証明書の提供方法を指定します。Specifies how client certificates are provided.

CookieUsePolicy

この列挙型では、サーバーと通信するとき、HTTP Cookie を制御できます。This enumeration allows control of HTTP cookies when communicating with the server.

HttpCompletionOption

応答が使用できるようになった場合に HttpClient 操作が完了したと見なすか、内容を含む応答メッセージ全体を読み取った後に完了したと見なすかを示します。Indicates if HttpClient operations should be considered completed either as soon as a response is available, or after reading the entire response message including the content.

WindowsProxyUsePolicy

この列挙型は、Windows で実行されるときに HttpClient によって使われるプロキシ設定に使うことができるオプションを提供します。This enumeration provides available options for the proxy settings used by an HttpClient when running on Windows.

注釈

System.Net.Http 名前空間は、次の機能を提供するように設計されています。The System.Net.Http namespace is designed to provide the following:

  1. Http 経由での最新の web サービスの使用をユーザーに許可する HTTP クライアントコンポーネント。HTTP client components that allow users to consume modern web services over HTTP.

  2. クライアントとサーバーの両方で使用できる HTTP コンポーネント (HTTP ヘッダーおよびメッセージなど)。HTTP components that can be used by both clients and servers (HTTP headers and messages, for example). これにより、クライアントとサーバー側の両方で、HTTP を介した最新の web サービス用の一貫したプログラミングモデルが提供されます。This provides a consistent programming model on both the client and the server side for modern web services over HTTP.

System.Net.Http 名前空間と関連する System.Net.Http.Headers 名前空間は、次のコンポーネントのセットを提供します。The System.Net.Http namespace and the related System.Net.Http.Headers namespace provide the following set of components:

  1. HttpClient-HTTP 経由で要求を送受信するために使用されるプライマリクラス。HttpClient - the primary class used to send and receive requests over HTTP.

  2. IETF によって RFC 2616 で定義されている HttpRequestMessage および HttpResponseMessage HTTP メッセージ。HttpRequestMessage and HttpResponseMessage - HTTP messages as defined in RFC 2616 by the IETF.

  3. HttpHeaders-IETF によって RFC 2616 で定義されている HTTP ヘッダー。HttpHeaders - HTTP headers as defined in RFC 2616 by the IETF.

  4. HTTP 応答メッセージの生成を担当する HTTP ハンドラー HttpClientHandlerHttpClientHandler - HTTP handlers responsible for producing HTTP response messages.

さまざまな HTTP メッセージハンドラーを使用できます。There are various HTTP message handlers that can be used. 次のようなものがあります。These include the following.

  1. DelegatingHandler-ハンドラーをハンドラーチェーンに接続するために使用されるクラス。DelegatingHandler - A class used to plug a handler into a handler chain.

  2. HttpMessageHandler-ほとんどのアプリケーションの最も一般的な要件をサポートするから派生する単純なクラスです。HttpMessageHandler - A simple to class to derive from that supports the most common requirements for most applications.

  3. HttpClientHandler-HTTP トランスポート操作を実際に処理するハンドラーチェーンの一番下で動作するクラス。HttpClientHandler - A class that operates at the bottom of the handler chain that actually handles the HTTP transport operations.

  4. WebRequestHandler-System.Net.HttpWebRequest オブジェクトに固有のオプションを使用して HTTP トランスポート操作を処理する、ハンドラーチェーンクラスの下部で動作する特別なクラスです。WebRequestHandler - A specialty class that operates at the bottom of the handler chain class that handles HTTP transport operations with options that are specific to the System.Net.HttpWebRequest object.

HTTP メッセージの内容は、RFC 2616 で定義されているエンティティ本体に対応します。The contents of an HTTP message corresponds to the entity body defined in RFC 2616.

HTTP コンテンツには、いくつかのクラスを使用できます。A number of classes can be used for HTTP content. 次のようなものがあります。These include the following.

  1. ByteArrayContent-バイト配列に基づく HTTP コンテンツ。ByteArrayContent - HTTP content based on a byte array.

  2. FormUrlEncodedContent-application/url エンコード MIME タイプを使用してエンコードされた名前と値のタプルの HTTP コンテンツ。FormUrlEncodedContent - HTTP content of name/value tuples encoded using application/x-www-form-urlencoded MIME type.

  3. MultipartContent-マルチパート/* コンテンツタイプの仕様を使用してシリアル化される HTTP コンテンツ。MultipartContent - HTTP content that gets serialized using the multipart/* content type specification.

  4. MultipartFormDataContent-マルチパート/フォームデータの MIME の種類を使用してエンコードされた HTTP コンテンツ。MultipartFormDataContent - HTTP content encoded using the multipart/form-data MIME type.

  5. StreamContent-ストリームに基づく HTTP コンテンツ。StreamContent - HTTP content based on a stream.

  6. StringContent-文字列に基づく HTTP コンテンツ。StringContent - HTTP content based on a string.

System.Net.HttpSystem.Net.Http.Headers 名前空間を使用しているアプリで大量のデータ (50 mb 以上) をダウンロードする場合、アプリはこれらのダウンロードをストリーミングし、既定のバッファリングを使用しないようにする必要があります。If an app using the System.Net.Http and System.Net.Http.Headers namespaces intends to download large amounts of data (50 megabytes or more), then the app should stream those downloads and not use the default buffering. 既定のバッファリングを使用すると、クライアントのメモリ使用量が非常に大きくなり、パフォーマンスが大幅に低下する可能性があります。If the default buffering is used the client memory usage will get very large, potentially resulting in substantially reduced performance.

System.Net.Http および System.Net.Http.Headers 名前空間のクラスを使用して、Windows ストアアプリまたはデスクトップアプリを開発できます。Classes in the System.Net.Http and System.Net.Http.Headers namespaces can be used to develop Windows Store apps or desktop apps. Windows ストアアプリで使用する場合、System.Net.Http 名前空間と System.Net.Http.Headers 名前空間のクラスは、Windows 8Windows 8によって使用されるアプリケーションセキュリティモデルの一部であるネットワーク分離機能の影響を受けます。When used in a Windows Store app, classes in the System.Net.Http and System.Net.Http.Headers namespaces are affected by network isolation feature, part of the application security model used by the Windows 8Windows 8. Windows ストアアプリによるネットワークアクセスを許可するために、システム用の Windows ストアアプリのアプリマニフェストで適切なネットワーク機能を有効にする必要があります。The appropriate network capabilities must be enabled in the app manifest for a Windows Store app for the system to allow network access by a Windows store app. 詳細については、「Network Isolation for Windows Store Apps (Windows ストア アプリのネットワークの分離)」をご覧ください。For more information, see the Network Isolation for Windows Store Apps.

こちらもご覧ください