System.Net.Http Namespace

Stellt eine Programmierschnittstelle für moderne HTTP-Anwendungen zur Verfügung. 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 Klasse zum Senden von HTTP-Anforderungen und empfangen von HTTP-Antworten aus einer Ressource bereit, die durch einen URI identifiziert wird.Provides a class for sending HTTP requests and receiving HTTP responses from a resource identified by a URI.

HttpClientFactoryExtensions

Erweiterungsmethoden für IHttpClientFactory.Extensions methods for IHttpClientFactory.

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.

HttpMessageHandlerFactoryExtensions

Erweiterungsmethoden für IHttpMessageHandlerFactory.Extensions methods for IHttpMessageHandlerFactory.

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-Anforderungsnachricht dar.Represents a HTTP request message.

HttpRequestOptions
HttpResponseMessage

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

MessageProcessingHandler

Ein Basistyp für Handler, die nur am Rande an der Verarbeitung von Anforderungs- und/oder Antwortnachrichten beteiligt sind.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 Inhalt bereit, der mithilfe des MIME-Typs „multipart/form-data“ codiert wurde.Provides a container for content encoded using multipart/form-data MIME type.

NSUrlSessionHandler

Der Standardmeldungshandler, der von HttpClient auf Apple-Plattformen unter Verwendung des Xamarin-Stapels verwendet wird (iOS, macOS, watchOS, tvOS)The default message handler used by HttpClient on Apple platforms using the Xamarin stack (iOS, macOS, watchOS, tvOS)

ReadOnlyMemoryContent

Stellt HTTP-Inhalt auf der Grundlage von ReadOnlyMemory<T> bereit.Provides HTTP content based on a ReadOnlyMemory<T>.

RtcRequestFactory
SocketsHttpConnectionContext

Stellt den Kontext dar, der an ConnectCallback für eine SocketsHttpHandler-Instanz übergeben wird.Represents the context passed to the ConnectCallback for a SocketsHttpHandler instance. ..

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.

SocketsHttpPlaintextStreamFilterContext
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

Verarbeitet Nachrichten auf der Grundlage der WinHTTP-Schnittstelle von Windows.Handles messages based on the WinHTTP interface of Windows. Diese Klasse ist für die Verwendung in Serverumgebungen vorgesehen.This class is intended for use in server environments.

Strukturen

HttpRequestOptionsKey<TValue>

Schnittstellen

IHttpClientFactory

Eine Factoryabstraktion für eine Komponente, die HttpClient-Instanzen mit benutzerdefinierter Konfiguration für einen angegebenen logischen Namen erstellen kann.A factory abstraction for a component that can create HttpClient instances with custom configuration for a given logical name.

IHttpMessageHandlerFactory

Eine Factoryabstraktion für eine Komponente, die HttpMessageHandler-Instanzen mit benutzerdefinierter Konfiguration für einen angegebenen logischen Namen erstellen kann.A factory abstraction for a component that can create HttpMessageHandler instances with custom configuration for a given logical name.

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.

HttpKeepAlivePingPolicy

Gibt an, wann der HTTP/2-Pingrahmen bei einer Verbindung im Leerlauf gesendet wird.Specifies when the HTTP/2 ping frame is sent on an idle connection.

HttpVersionPolicy

Gibt Verhalten zum Auswählen und Aushandeln der HTTP-Version für eine Anforderung an.Specifies behaviors for selecting and negotiating the HTTP version for a request.

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.

Delegaten

HeaderEncodingSelector<TContext>

Stellt eine Methode dar, die die beim Interpretieren von Headerwerten zu verwendende Codierung angibt.Represents a method that specifies the encoding to use when interpreting header values.

Hinweise

Der- System.Net.Http Namespace soll Folgendes bereitstellen:The System.Net.Http namespace is designed to provide the following:

  1. Http-Client Komponenten, die es Benutzern ermöglichen, moderne Webdienste über HTTP zu verwenden.HTTP client components that allow users to consume modern web services over HTTP.

  2. Http-Komponenten, die sowohl von Clients als auch von Servern (z. b. HTTP-Header und-Nachrichten) verwendet werden können.HTTP components that can be used by both clients and servers (HTTP headers and messages, for example). Dadurch wird sowohl auf dem Client als auch auf der Serverseite für moderne Webdienste über HTTP ein konsistentes Programmiermodell bereitstellt.This provides a consistent programming model on both the client and the server side for modern web services over HTTP.

Der System.Net.Http -Namespace und der zugehörige- System.Net.Http.Headers Namespace stellen die folgenden Komponenten bereit: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 wird.HttpClient - the primary class used to send and receive requests over HTTP.

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

  3. HttpHeaders -HTTP-Header gemäß Definition in RFC 2616 durch IETF.HttpHeaders - HTTP headers as defined in RFC 2616 by the IETF.

  4. HttpClientHandler -HTTP-Handler für das Erstellen von HTTP-Antwort Nachrichten.HttpClientHandler - HTTP handlers responsible for producing HTTP response messages.

Es gibt verschiedene HTTP-Nachrichten Handler, die verwendet werden können.There are various HTTP message handlers that can be used. Hierzu gehören die folgenden.These include the following.

  1. DelegatingHandler -Eine Klasse, die zum Einbinden eines Handlers in eine handlerkette verwendet wird.DelegatingHandler - A class used to plug a handler into a handler chain.

  2. HttpMessageHandler -Eine einfache Klasse, von der abgeleitet werden muss, die die gängigsten Anforderungen für die meisten Anwendungen unterstützt.HttpMessageHandler - A simple class to derive from that supports the most common requirements for most applications.

  3. HttpClientHandler -Eine Klasse, die am unteren Rand der handlerkette operiert, die die http-Transportvorgänge tatsächlich verarbeitet.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 unteren Rand der handlerketten-Klasse arbeitet und http-Transportvorgänge mit Optionen verarbeitet, die für das-Objekt spezifisch sind System.Net.HttpWebRequest .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 dem in RFC 2616 definierten Entitäts Text.The contents of an HTTP message corresponds to the entity body defined in RFC 2616.

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

  1. ByteArrayContent -HTTP-Inhalt, der auf einem Bytearray basiert.ByteArrayContent - HTTP content based on a byte array.

  2. FormUrlEncodedContent -HTTP-Inhalt von Name-Wert-Tupeln, die mit dem MIME-Typ application/x-www-form-urlencoded codiert wurden.FormUrlEncodedContent - HTTP content of name/value tuples encoded using application/x-www-form-urlencoded MIME type.

  3. MultipartContent -HTTP-Inhalt, der mit der Multipart/*-Inhaltstyp Spezifikation serialisiert wird.MultipartContent - HTTP content that gets serialized using the multipart/* content type specification.

  4. MultipartFormDataContent -HTTP-Inhalt, der mit dem Multipart/Form-Data-MIME-Typ codiert ist.MultipartFormDataContent - HTTP content encoded using the multipart/form-data MIME type.

  5. StreamContent -HTTP-Inhalt, der auf einem Stream basiert.StreamContent - HTTP content based on a stream.

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

Wenn eine APP, die den System.Net.Http -Namespace und den- System.Net.Http.Headers Namespace verwendet, große Datenmengen herunterladen will (50 Megabyte oder mehr), sollte die APP diese Downloads streamen und nicht die Standard Pufferung verwenden.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 Standard Pufferung verwendet wird, wird die Speicherauslastung des Clients sehr groß, was möglicherweise zu einer erheblich geringeren Leistung führt.If the default buffering is used the client memory usage will get very large, potentially resulting in substantially reduced performance.

Klassen in den System.Net.Http System.Net.Http.Headers Namespaces und 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 sind Klassen in den System.Net.Http -und- System.Net.Http.Headers Namespaces von der Netzwerk Isolations Funktion betroffen, die Teil des Anwendungs Sicherheitsmodells ist, das von Windows 8 verwendet wird.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 8. Die entsprechenden Netzwerkfunktionen müssen im App-Manifest für eine Windows Store-App aktiviert sein, damit das System den Netzwerk Zugriff durch eine Windows Store-App zulässt.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.

Siehe auch