System.Net.Http Namespace

Der System.Net.Http-Namespace stellt eine Programmierschnittstelle für moderne HTTP-Anwendungen zur Verfügung. The System.Net.Http namespace provides a programming interface for modern HTTP applications.

Klassen

ByteArrayContent

Stellt HTTP-Inhalt auf Grundlage von einem Bytearray bereit.Provides HTTP content based on a byte array.

CFNetworkHandler
DelegatingHandler

Ein Typ für HTTP-Handler, die die Verarbeitung von HTTP-Antwortnachrichten in einen anderen Handler (den internen Handler) delegieren.A type for HTTP handlers that delegate the processing of HTTP response messages to another handler, called the inner handler.

FormUrlEncodedContent

Ein Container für die Name/Wert-Tupel, codiert mit dem "application/x-www-form-urlencoded" MIME-Typ.A container for name/value tuples encoded using application/x-www-form-urlencoded MIME type.

HttpClient

Stellt eine Basisklasse zum Senden von HTTP-Anforderungen und Empfangen von HTTP-Antworten aus einer Ressource bereit, die von einem URI identifiziert wird.Provides a base class for sending HTTP requests and receiving HTTP responses from a resource identified by a URI.

HttpClientHandler

Den Standardnachrichtenhandler, der von HttpClient in .NET Framework und .NET Core 2.0 und früheren Versionen verwendet wird.The default message handler used by HttpClient in .NET Framework and .NET Core 2.0 and earlier.

HttpContent

Eine Basisklasse, die einen HTTP-Entitätstext und Inhaltsheader darstellt.A base class representing an HTTP entity body and content headers.

HttpMessageHandler

Ein Basistyp für HTTP-Meldungshandler.A base type for HTTP message handlers.

HttpMessageInvoker

Eine spezielle Klasse, die es Anwendungen ermöglicht, die SendAsync(HttpRequestMessage, CancellationToken)-Methode auf einer HTTP-Handlerkette aufzurufen.A specialty class that allows applications to call the SendAsync(HttpRequestMessage, CancellationToken) method on an HTTP handler chain.

HttpMethod

Eine Hilfsprogrammklasse für das Abrufen und das Vergleichen von Standard-HTTP-Methoden und zum Erstellen von neuen HTTP-Methoden.A helper class for retrieving and comparing standard HTTP methods and for creating new HTTP methods.

HttpRequestException

Eine Basisklasse für Ausnahmen, die von den Klassen HttpClient und HttpMessageHandler ausgelöst werden.A base class for exceptions thrown by the HttpClient and HttpMessageHandler classes.

HttpRequestMessage

Stellt eine HTTP-Nachrichtenanfrage dar.Represents a HTTP request message.

HttpResponseMessage

Stellt eine HTTP-Antwortnachricht einschließlich den Statuscode und die Daten dar.Represents a HTTP response message including the status code and data.

MessageProcessingHandler

Ein Basistyp für Handler, die nur einige kleine Verarbeitung der Anforderungs- und/oder der Antwortnachrichten ausführen.A base type for handlers which only do some small processing of request and/or response messages.

MultipartContent

Stellt eine Auflistung von HttpContent-Objekten bereit, die mithilfe der multipart/*-Inhaltstypspezifikation serialisiert werden.Provides a collection of HttpContent objects that get serialized using the multipart/* content type specification.

MultipartFormDataContent

Stellt einen Container für den Inhalt bereit, der mithilfe des multipart/form-data-MIME-Typs codiert wird.Provides a container for content encoded using multipart/form-data MIME type.

NSUrlSessionHandler
ReadOnlyMemoryContent
RtcRequestFactory
SocketsHttpHandler

Stellt den Standardnachrichtenhandler bereit, der von HttpClient in .NET Core 2.1 und höher verwendet wird.Provides the default message handler used by HttpClient in .NET Core 2.1 and later.

StreamContent

Stellt HTTP-Inhalt auf Grundlage eines Streams bereit.Provides HTTP content based on a stream.

StringContent

Stellt HTTP-Inhalt auf Grundlage einer Zeichenfolge bereit.Provides HTTP content based on a string.

WebRequestHandler

Stellt desktop-spezifische Funktionen bereit, die für Windows Store-Apps oder andere Umgebungen nicht verfügbar sind.Provides desktop-specific features not available to Windows Store apps or other environments.

WinHttpHandler

WinHttpHandler ist ein spezieller Meldungshandler, der auf der WinHTTP-Schnittstelle von Windows basiert und für die Verwendung in Serverumgebungen vorgesehen ist.WinHttpHandler is a specialty message handler based on the WinHTTP interface of Windows and is intended for use in server environments. Diese Klasse ist auch für die Verwendung in Desktop-Apps verfügbar, indem Sie diese als NuGet-Paket installieren.This class is also available for use in Desktop apps by installing it as a NuGet package. Weitere Informationen zum Installieren dieser Klasse für die Verwendung in Desktop-Apps finden Sie unter System.Net.Http.WinHttpHandler.For more information about installing this class for use in Desktop apps, see System.Net.Http.WinHttpHandler.

Enumerationen

ClientCertificateOption

Gibt an, wie die Clientzertifikate bereitgestellt werden.Specifies how client certificates are provided.

CookieUsePolicy

Diese Enumeration ermöglicht das Steuern von HTTP-Cookies bei der Kommunikation mit dem Server.This enumeration allows control of HTTP cookies when communicating with the server.

HttpCompletionOption

Gibt an, ob HttpClient-Vorgänge als abgeschlossen betrachtet werden, sobald eine Antwort verfügbar ist, oder nachdem die gesamte Antwortnachricht einschließlich Inhalt gelesen wurde.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

Diese Enumeration stellt verfügbare Optionen für die Proxyeinstellungen bereit, die von einem HttpClient-Objekt bei der Ausführung unter Windows verwendet werden.This enumeration provides available options for the proxy settings used by an HttpClient when running on Windows.

Hinweise

Die System.Net.Http Namespace wurde entwickelt, um Folgendes bereitzustellen:The System.Net.Http namespace is designed to provide the following:

  1. HTTP-Client-Komponenten, die Benutzern von modernen Webdiensten über HTTP zu ermöglichen.HTTP client components that allow users to consume modern web services over HTTP.

  2. HTTP-Komponenten, die verwendet werden, können Clients und Servern (HTTP-Header und Nachrichten, zum Beispiel).HTTP components that can be used by both clients and servers (HTTP headers and messages, for example). Dies bietet ein konsistentes Programmiermodell für die Client- und Serverseite für moderne Web Services über HTTP.This provides a consistent programming model on both the client and the server side for modern web services over HTTP.

Die System.Net.Http Namespace und den zugehörigen System.Net.Http.Headers Namespace bieten die folgenden Komponenten:The System.Net.Http namespace and the related System.Net.Http.Headers namespace provide the following set of components:

  1. HttpClient – die primäre Klasse, die zum Senden und Empfangen von Anforderungen über HTTP verwendet.HttpClient - the primary class used to send and receive requests over HTTP.

  2. HttpRequestMessage und HttpResponseMessage -HTTP-Nachrichten als durch die IETF RFC 2616 definiert.HttpRequestMessage and HttpResponseMessage - HTTP messages as defined in RFC 2616 by the IETF.

  3. HttpHeaders -HTTP-Header, wie durch die IETF RFC 2616 definiert.HttpHeaders - HTTP headers as defined in RFC 2616 by the IETF.

  4. HttpClientHandler -HTTP-Handler ist verantwortlich für die Erstellung von HTTP-Antwortnachrichten an.HttpClientHandler - HTTP handlers responsible for producing HTTP response messages.

Es gibt verschiedene HTTP-Nachricht verarbeitet, die verwendet werden können.There are various HTTP message handles that can be used. Dazu gehören die folgenden.These include the following.

  1. DelegatingHandler – Eine Klasse verwendet, um einen Handler in einer handlerkette eingebunden.DelegatingHandler - A class used to plug a handler into a handler chain.

  2. HttpMessageHandler – Eine einfache Klasse abgeleitet, die die am häufigsten verwendeten Anforderungen für die meisten Anwendungen unterstützt.HttpMessageHandler - A simple to class to derive from that supports the most common requirements for most applications.

  3. HttpClientHandler – Eine Klasse, die am Ende der handlerkette ausgeführt wird, der die HTTP-Transport-Vorgänge behandelt.HttpClientHandler - A class that operates at the bottom of the handler chain that actually handles the HTTP transport operations.

  4. WebRequestHandler – Eine spezielle Klasse, die am Ende der Kette Handlerklasse ausgeführt wird, die HTTP-Transport-Vorgänge mit Optionen behandelt, die spezifisch für die System.Net.HttpWebRequest Objekt.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.

Der Inhalt einer HTTP-Nachricht entspricht, in den Entitätstext in RFC 2616 definiert.The contents of an HTTP message corresponds to the entity body defined in RFC 2616.

Für HTTP-Inhalt kann eine Reihe von Klassen verwendet werden.A number of classes can be used for HTTP content. Dazu gehören die folgenden.These include the following.

  1. ByteArrayContent -HTTP-Inhalt basierend auf ein Bytearray.ByteArrayContent - HTTP content based on a byte array.

  2. FormUrlEncodedContent -Name/Wert-Tupel HTTP-Inhalt, mit der Application/X-www-form-urlencoded-MIME-Typ, codiert werden.FormUrlEncodedContent - HTTP content of name/value tuples encoded using application/x-www-form-urlencoded MIME type.

  3. MultipartContent -HTTP-Inhalte, die serialisiert werden, mithilfe der Multipart / *-inhaltstypspezifikation.MultipartContent - HTTP content that gets serialized using the multipart/* content type specification.

  4. MultipartFormDataContent -HTTP-Inhalt codiert mithilfe des Multipart/Form-Data-MIME-Typs.MultipartFormDataContent - HTTP content encoded using the multipart/form-data MIME type.

  5. StreamContent -HTTP-Inhalt basierend auf einen Stream.StreamContent - HTTP content based on a stream.

  6. StringContent -HTTP-Inhalt basierend auf einer Zeichenfolge.StringContent - HTTP content based on a string.

Wenn eine app mit der System.Net.Http und System.Net.Http.Headers Namespaces beabsichtigt, um große Mengen von Daten (50 MB oder mehr) herunterzuladen, und klicken Sie dann die app sollte diesen Downloads zu streamen, und nicht die standardmäßige Pufferung.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. Wenn die standardmäßige Pufferung verwendet wird die Auslastung des Speichers erhalten sehr groß, was möglicherweise wesentlich zu einer Beeinträchtigung der Leistung.If the default buffering is used the client memory usage will get very large, potentially resulting in substantially reduced performance.

Klassen in der System.Net.Http und System.Net.Http.Headers Namespaces können verwendet werden, um Windows Store-apps oder desktop-apps zu entwickeln.Classes in the System.Net.Http and System.Net.Http.Headers namespaces can be used to develop Windows Store apps or desktop apps. Bei Verwendung in einer Windows Store-app-Klassen in der System.Net.Http und System.Net.Http.Headers Namespaces sind betroffen, von der Netzwerkisolationsfunktion, Teil des anwendungssicherheitsmodells, die von der 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. Die entsprechenden Netzwerkfunktionen müssen im app-Manifest für eine Windows Store-app für das System den Netzwerkzugriff erlaubt von einer Windows Store-app aktiviert werden.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. Weitere Informationen finden Sie unter Netzwerkisolation für Windows Store-Apps.For more information, see the Network Isolation for Windows Store Apps.