System.Net.Http Namespace
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Stellt eine Programmierschnittstelle für moderne HTTP-Anwendungen bereit.
Klassen
| Name | Beschreibung |
|---|---|
| ByteArrayContent |
Stellt HTTP-Inhalte basierend auf einem Bytearray bereit. |
| DelegatingHandler |
Ein Typ für HTTP-Handler, die die Verarbeitung von HTTP-Antwortnachrichten an einen anderen Handler delegieren, der als innerer Handler bezeichnet wird. |
| FormUrlEncodedContent |
Ein Container für Name/Wert-Tupel, die mit application/x-www-form-urlencoded MIME-Typ codiert werden. |
| HttpClient |
Stellt eine Klasse zum Senden von HTTP-Anforderungen und empfangen von HTTP-Antworten von einer Ressource bereit, die durch einen URI identifiziert wird. |
| HttpClientFactoryExtensions |
Extensions-Methoden für IHttpClientFactory. |
| HttpClientHandler |
Der standardnachrichtenhandler, der von HttpClient .NET Framework und .NET Core 2.0 und früher verwendet wird. |
| HttpContent |
Eine Basisklasse, die einen HTTP-Entitätstext und Inhaltsheader darstellt. |
| HttpDiagnosticsHttpRequestMessageExtensions |
Erweiterungen für Telemetrieprogramme. |
| HttpIOException |
Die Ausnahme, die ausgelöst wird, wenn beim Lesen der Antwort ein Fehler auftritt. |
| HttpMessageHandler |
Ein Basistyp für HTTP-Nachrichtenhandler. |
| HttpMessageHandlerFactoryExtensions |
Extensions-Methoden für IHttpMessageHandlerFactory. |
| HttpMessageInvoker |
Eine Spezialklasse, mit der Anwendungen die SendAsync(HttpRequestMessage, CancellationToken) Methode in einer HTTP-Handlerkette aufrufen können. |
| HttpMethod |
Eine Hilfsklasse zum Abrufen und Vergleichen von Standard-HTTP-Methoden und zum Erstellen neuer HTTP-Methoden. |
| HttpProtocolException |
Die Ausnahme wird ausgelöst, wenn ein HTTP/2- oder EIN HTTP/3-Protokollfehler auftritt. |
| HttpRequestException |
Eine Basisklasse für Ausnahmen, die von den HttpClient Und-Klassen HttpMessageHandler ausgelöst werden. |
| HttpRequestMessage |
Stellt eine HTTP-Anforderungsnachricht dar. |
| HttpRequestOptions |
Stellt eine Auflistung von Optionen für eine HTTP-Anforderung dar. |
| HttpResilienceHttpRequestMessageExtensions |
Die Resilienzerweiterungen für HttpRequestMessage. |
| HttpResponseMessage |
Stellt eine HTTP-Antwortnachricht einschließlich Statuscode und Daten dar. |
| MessageProcessingHandler |
Ein Basistyp für Handler, die nur eine kleine Verarbeitung von Anforderungs- und/oder Antwortnachrichten ausführen. |
| MultipartContent |
Stellt eine Auflistung von HttpContent Objekten bereit, die mithilfe der Multipart/*-Inhaltstypspezifikation serialisiert werden. |
| MultipartFormDataContent |
Stellt einen Container für Inhalte bereit, die mit mehrteiligem/formulardaten-MIME-Typ codiert werden. |
| ReadOnlyMemoryContent |
Stellt HTTP-Inhalte basierend auf einem ReadOnlyMemory<T>. |
| RtcRequestFactory |
Stellt eine Programmierschnittstelle für moderne HTTP-Anwendungen bereit. |
| SocketsHttpConnectionContext |
Stellt den Kontext dar, der an die ConnectCallbackSocketsHttpHandler Instanz übergeben wird. . |
| SocketsHttpHandler |
Stellt den standardnachrichtenhandler bereit, der von HttpClient .NET Core 2.1 und höher verwendet wird. |
| SocketsHttpPlaintextStreamFilterContext |
Stellt den Kontext dar, der an den PlaintextStreamFilter für eine SocketsHttpHandler-Instanz übergeben wird. |
| StreamContent |
Stellt HTTP-Inhalte basierend auf einem Datenstrom bereit. |
| StringContent |
Stellt HTTP-Inhalte basierend auf einer Zeichenfolge bereit. |
| WebRequestHandler |
Stellt desktopspezifische Features bereit, die für Windows Store-Apps oder andere Umgebungen nicht verfügbar sind. |
| WinHttpHandler |
Verarbeitet Nachrichten basierend auf der WinHTTP-Schnittstelle von Windows. Diese Klasse ist für die Verwendung in Serverumgebungen vorgesehen. |
Strukturen
| Name | Beschreibung |
|---|---|
| HttpRequestOptionsKey<TValue> |
Stellt einen Schlüssel in der Optionsauflistung für eine HTTP-Anforderung dar. |
Schnittstellen
| Name | Beschreibung |
|---|---|
| IHttpClientFactory |
Eine Factorystraktion für eine Komponente, die Instanzen mit benutzerdefinierter Konfiguration für einen bestimmten logischen Namen erstellen HttpClient kann. |
| IHttpMessageHandlerFactory |
Eine Factorystraktion für eine Komponente, die Instanzen mit benutzerdefinierter Konfiguration für einen bestimmten logischen Namen erstellen HttpMessageHandler kann. |
Enumerationen
| Name | Beschreibung |
|---|---|
| ClientCertificateOption |
Gibt an, wie Clientzertifikate bereitgestellt werden. |
| CookieUsePolicy |
Diese Enumeration ermöglicht die Steuerung von HTTP-Cookies bei der Kommunikation mit dem Server. |
| HttpCompletionOption |
Gibt an, ob HttpClient Vorgänge entweder abgeschlossen werden sollen, sobald eine Antwort verfügbar ist, oder nach dem Lesen der gesamten Antwortnachricht einschließlich des Inhalts. |
| HttpKeepAlivePingPolicy |
Gibt an, wann der HTTP/2-Pingframe in einer Leerlaufverbindung gesendet wird. |
| HttpRequestError |
Definiert Fehlerkategorien, die den Grund für HttpRequestException oder HttpIOExceptiondarstellen. |
| HttpVersionPolicy |
Gibt Verhaltensweisen zum Auswählen und Aushandeln der HTTP-Version für eine Anforderung an. |
| WindowsProxyUsePolicy |
Diese Enumeration bietet verfügbare Optionen für die Proxyeinstellungen, die von einem HttpClient bei der Ausführung unter Windows verwendet werden. |
Delegaten
| Name | Beschreibung |
|---|---|
| HeaderEncodingSelector<TContext> |
Stellt eine Methode dar, die die Codierung angibt, die beim Interpretieren von Headerwerten verwendet werden soll. |
Hinweise
Der System.Net.Http Namespace wurde entwickelt, um die folgenden Komponenten bereitzustellen:
- HTTP-Clientkomponenten, mit denen Benutzer moderne Webdienste über HTTP nutzen können.
- HTTP-Komponenten, die von Clients und Servern verwendet werden können (z. B. HTTP-Header und Nachrichten). Dies bietet ein konsistentes Programmiermodell sowohl auf dem Client als auch auf der Serverseite für moderne Webdienste über HTTP.
Der System.Net.Http Namespace und der zugehörige System.Net.Http.Headers Namespace stellen die folgenden Komponenten bereit:
- HttpClient – Die primäre Klasse, die zum Senden und Empfangen von Anforderungen über HTTP verwendet wird.
- HttpRequestMessage und HttpResponseMessage - HTTP-Nachrichten, wie in RFC 2616 von der IETF definiert.
- HttpHeaders - HTTP-Header, wie in RFC 2616 vom IETF definiert.
- HttpClientHandler - HTTP-Handler, die für die Erstellung von HTTP-Antwortnachrichten verantwortlich sind.
Es gibt verschiedene HTTP-Nachrichtenhandler, die Sie verwenden können:
- DelegatingHandler – Eine Klasse, die zum Anschließen eines Handlers in eine Handlerkette verwendet wird.
- HttpMessageHandler – Eine einfache Klasse, von der die häufigsten Anforderungen für die meisten Anwendungen unterstützt werden.
- HttpClientHandler – Eine Klasse, die am unteren Rand der Handlerkette ausgeführt wird, die die HTTP-Transportvorgänge tatsächlich verarbeitet.
Der Inhalt einer HTTP-Nachricht entspricht dem in RFC 2616 definierten Entitätstext.
Die folgenden Klassen können für HTTP-Inhalte verwendet werden:
- ByteArrayContent - HTTP-Inhalt basierend auf einem Bytearray.
- FormUrlEncodedContent - HTTP-Inhalt von Name/Wert-Tupeln, die mit application/x-www-form-urlencoded MIME-Typ codiert werden.
- MultipartContent – HTTP-Inhalte, die mithilfe der Spezifikation des mehrteiligen/* Inhaltstyps serialisiert werden.
- MultipartFormDataContent – HTTP-Inhalt, der mit dem MIME-Typ "multipart/form-data" codiert wurde.
- StreamContent – HTTP-Inhalt basierend auf einem Datenstrom.
- StringContent - HTTP-Inhalt basierend auf einer Zeichenfolge.
Wenn Ihre App die System.Net.Http Und-Namespaces System.Net.Http.Headers verwendet und große Datenmengen (50 MB oder mehr) herunterladen möchte, sollte sie diese Downloads streamen und nicht die Standardpufferung verwenden. Wenn Sie die Standardpufferung verwenden, wird die Clientspeicherauslastung sehr groß, was zu erheblich reduzierter Leistung führt.