SocketsHttpHandler SocketsHttpHandler SocketsHttpHandler SocketsHttpHandler Class

Definition

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.

public ref class SocketsHttpHandler sealed : System::Net::Http::HttpMessageHandler
public sealed class SocketsHttpHandler : System.Net.Http.HttpMessageHandler
type SocketsHttpHandler = class
    inherit HttpMessageHandler
Public NotInheritable Class SocketsHttpHandler
Inherits HttpMessageHandler
Vererbung
SocketsHttpHandlerSocketsHttpHandlerSocketsHttpHandlerSocketsHttpHandler

Hinweise

Beginnend mit .NET Core 2.1, die SocketsHttpHandler -Klasse enthält die Implementierung von auf höherer Ebene HTTP-Netzwerkklassen verwendet z. B. HttpClient.Starting with .NET Core 2.1, the SocketsHttpHandler class provides the implementation used by higher-level HTTP networking classes such as HttpClient. Die Verwendung von SocketsHttpHandler bietet eine Reihe von Vorteilen:The use of SocketsHttpHandler offers a number of advantages:

  • Eine beträchtliche Leistungssteigerung im Vergleich zur früheren Implementierung.A significant performance improvement when compared with the previous implementation.

  • Die Beseitigung von plattformabhängigkeiten, die Bereitstellung und Wartung vereinfacht.The elimination of platform dependencies, which simplifies deployment and servicing. Z. B. libcurl ist nicht mehr eine Abhängigkeit von .NET Core für MacOS und .NET Core für Linux.For example, libcurl is no longer a dependency on .NET Core for macOS and .NET Core for Linux.

  • Konsistentes Verhalten auf allen Plattformen für .NET.Consistent behavior across all .NET platforms.

Wenn diese Änderung nicht erwünscht ist, können Sie konfigurieren, dass Ihre Anwendung mit dem älteren System.Net.Http.HttpClientHandler Klasse stattdessen in eine Reihe von Möglichkeiten:If this change is undesirable, you can configure your application to use the older System.Net.Http.HttpClientHandler class instead in a number of ways:

  • Durch Aufrufen der AppContext.SetSwitch -Methode wie folgt:By calling the AppContext.SetSwitch method as follows:

    AppContext.SetSwitch("System.Net.Http.UseSocketsHttpHandler", false);
    
    AppContext.SetSwitch("System.Net.Http.UseSocketsHttpHandler", False)
    
  • Durch die Definition der System.Net.Http.UseSocketsHttpHandler wechseln Sie der . netcore.runtimeconfig.json Konfigurationsdatei:By defining the System.Net.Http.UseSocketsHttpHandler switch in the .netcore.runtimeconfig.json configuration file:

    "runtimeOptions": {
      "configProperties": {
          "System.Net.Http.UseSocketsHttpHandler": false
      }
    }
    
  • Definieren Sie eine Umgebungsvariable namens DOTNET_SYSTEM_NET_HTTP_USESOCKETSHTTPHANDLER auf entweder festlegen false oder 0.By defining an environment variable named DOTNET_SYSTEM_NET_HTTP_USESOCKETSHTTPHANDLER and setting it to either false or 0.

Konstruktoren

SocketsHttpHandler() SocketsHttpHandler() SocketsHttpHandler() SocketsHttpHandler()

Eigenschaften

AllowAutoRedirect AllowAutoRedirect AllowAutoRedirect AllowAutoRedirect
AutomaticDecompression AutomaticDecompression AutomaticDecompression AutomaticDecompression
ConnectTimeout ConnectTimeout ConnectTimeout ConnectTimeout
CookieContainer CookieContainer CookieContainer CookieContainer
Credentials Credentials Credentials Credentials
DefaultProxyCredentials DefaultProxyCredentials DefaultProxyCredentials DefaultProxyCredentials
Expect100ContinueTimeout Expect100ContinueTimeout Expect100ContinueTimeout Expect100ContinueTimeout
MaxAutomaticRedirections MaxAutomaticRedirections MaxAutomaticRedirections MaxAutomaticRedirections
MaxConnectionsPerServer MaxConnectionsPerServer MaxConnectionsPerServer MaxConnectionsPerServer
MaxResponseDrainSize MaxResponseDrainSize MaxResponseDrainSize MaxResponseDrainSize
MaxResponseHeadersLength MaxResponseHeadersLength MaxResponseHeadersLength MaxResponseHeadersLength
PooledConnectionIdleTimeout PooledConnectionIdleTimeout PooledConnectionIdleTimeout PooledConnectionIdleTimeout

Ruft ab oder legt fest, wie lange sich eine Verbindung im Leerlauf im Pool befinden kann, damit sie als wiederverwendbar eingestuft wird.Gets or sets how long a connection can be idle in the pool to be considered reusable.

PooledConnectionLifetime PooledConnectionLifetime PooledConnectionLifetime PooledConnectionLifetime
PreAuthenticate PreAuthenticate PreAuthenticate PreAuthenticate
Properties Properties Properties Properties
Proxy Proxy Proxy Proxy
ResponseDrainTimeout ResponseDrainTimeout ResponseDrainTimeout ResponseDrainTimeout
SslOptions SslOptions SslOptions SslOptions
UseCookies UseCookies UseCookies UseCookies
UseProxy UseProxy UseProxy UseProxy

Methoden

Dispose() Dispose() Dispose() Dispose()

Gibt die vom HttpMessageHandler verwendeten, nicht verwalteten Ressourcen frei und verwirft die verwalteten Ressourcen.Releases the unmanaged resources and disposes of the managed resources used by the HttpMessageHandler.

(Inherited from HttpMessageHandler)
Dispose(Boolean) Dispose(Boolean) Dispose(Boolean) Dispose(Boolean)

Gibt die vom HttpMessageHandler verwendeten, nicht verwalteten Ressourcen frei und verwirft optional auch die verwalteten Ressourcen.Releases the unmanaged resources used by the HttpMessageHandler and optionally disposes of the managed resources.

(Inherited from HttpMessageHandler)
Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Bestimmt, ob das angegebene Objekt mit dem aktuellen Objekt identisch ist.Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Fungiert als Standardhashfunktion.Serves as the default hash function.

(Inherited from Object)
GetType() GetType() GetType() GetType()

Ruft den Type der aktuellen Instanz ab.Gets the Type of the current instance.

(Inherited from Object)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.Creates a shallow copy of the current Object.

(Inherited from Object)
SendAsync(HttpRequestMessage, CancellationToken) SendAsync(HttpRequestMessage, CancellationToken) SendAsync(HttpRequestMessage, CancellationToken) SendAsync(HttpRequestMessage, CancellationToken)

Senden Sie eine HTTP-Anforderung als asynchronen Vorgang.Send an HTTP request as an asynchronous operation.

(Inherited from HttpMessageHandler)
ToString() ToString() ToString() ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.Returns a string that represents the current object.

(Inherited from Object)

Gilt für: