SocketsHttpHandler Klasse

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
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public sealed class SocketsHttpHandler : System.Net.Http.HttpMessageHandler
public sealed class SocketsHttpHandler : System.Net.Http.HttpMessageHandler
[<System.Runtime.Versioning.UnsupportedOSPlatform("browser")>]
type SocketsHttpHandler = class
    inherit HttpMessageHandler
type SocketsHttpHandler = class
    inherit HttpMessageHandler
Public NotInheritable Class SocketsHttpHandler
Inherits HttpMessageHandler
Vererbung
SocketsHttpHandler
Attribute

Hinweise

Ab .net Core 2,1 stellt die- SocketsHttpHandler Klasse die-Implementierung bereit, die von http-Netzwerk Klassen der höheren Ebene verwendet wird, z HttpClient . b..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 Platt Form Abhängigkeiten, die die Bereitstellung und Wartung vereinfachen.The elimination of platform dependencies, which simplifies deployment and servicing. Beispielsweise libcurl ist keine Abhängigkeit mehr 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 für alle .net-Plattformen.Consistent behavior across all .NET platforms.

Wenn diese Änderung nicht erwünscht ist und Sie sich auf .net Core 2.1-3.1 befinden, können Sie die Anwendung so konfigurieren, dass Sie die ältere System.Net.Http.HttpClientHandler Klasse verwendet:If this change is undesirable and you are on .NET Core 2.1-3.1, 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 des System.Net.Http.UseSocketsHttpHandler Schalters in der .netcore.runtimeconfig.jsfür die 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 mit dem Namen DOTNET_SYSTEM_NET_HTTP_USESOCKETSHTTPHANDLER , und legen Sie Sie entweder auf false oder auf 0 fest.By defining an environment variable named DOTNET_SYSTEM_NET_HTTP_USESOCKETSHTTPHANDLER and setting it to either false or 0.

Diese Konfigurationsoptionen sind ab .net 5 nicht verfügbar.These configuration options are not available starting with .NET 5.

Konstruktoren

SocketsHttpHandler()

Erstellt eine Instanz einer SocketsHttpHandler-Klasse.Creates an instance of a SocketsHttpHandler class.

Eigenschaften

AllowAutoRedirect

Ruft einen Wert ab, der angibt, ob der Handler Umleitungsantworten folgen soll, oder legt diesen Wert fest.Gets or sets a value that indicates whether the handler should follow redirection responses.

AutomaticDecompression

Ruft den Typ der Dekomprimierungsmethode ab, die vom Handler für die automatische Dekomprimierung von Antworten mit HTTP-Inhalt verwendet wird, oder legt den Typ fest.Gets or sets the type of decompression method used by the handler for automatic decompression of the HTTP content response.

ConnectCallback

Ruft einen benutzerdefinierten Rückruf ab oder legt ihn fest, der zum Öffnen neuer Verbindungen verwendet wird.Gets or sets a custom callback used to open new connections.

ConnectTimeout

Ruft die Zeitspanne ab, nach der das Zeitlimit der Verbindungsherstellung überschritten ist, oder legt diese fest.Gets or sets the timespan to wait before the connection establishing times out.

CookieContainer

Ruft das Containerobjekt für verwaltete Cookies ab oder legt dieses fest.Gets or sets the managed cookie container object.

Credentials

Ruft von diesem Handler verwendete Authentifizierungsinformationen ab oder legt diese fest.Gets or sets authentication information used by this handler.

DefaultProxyCredentials

Wenn der Standardproxy (Systemproxy) verwendet wird, werden die Anmeldeinformationen abgerufen oder festgelegt, die verwendet werden, um den Standardproxyserver für die Authentifizierung zu übermitteln.When the default (system) proxy is used, gets or sets the credentials used to submit to the default proxy server for authentication.

EnableMultipleHttp2Connections

Ruft einen Wert ab oder legt diesen fest, der angibt, ob zusätzliche HTTP/2-Verbindungen mit demselben Server hergestellt werden können, wenn die maximale Anzahl gleichzeitiger Streams in allen vorhandenen Verbindungen erreicht wird.Gets or sets a value that indicates whether additional HTTP/2 connections can be established to the same server when the maximum number of concurrent streams is reached on all existing connections.

Expect100ContinueTimeout

Ruft den Timeoutwert für die Antwort des Servers zur HTTP 100-Fortsetzung ab oder legt ihn fest.Gets or sets the time-out value for server HTTP 100 Continue response.

IsSupported

Ruft einen Wert ab, der angibt, ob der Handler auf der aktuellen Plattform unterstützt wird.Gets a value that indicates whether the handler is supported on the current platform.

KeepAlivePingDelay

Ruft die Keep-Alive-Pingverzögerung ab oder legt sie fest.Gets or sets the keep alive ping delay.

KeepAlivePingPolicy

Ruft das Keep-Alive-Pingverhalten ab oder legt es fest.Gets or sets the keep alive ping behaviour.

KeepAlivePingTimeout

Ruft das Keep-Alive-Pingtimeout ab oder legt es fest.Gets or sets the keep alive ping timeout.

MaxAutomaticRedirections

Ruft die maximale Anzahl von zulässigen HTTP-Umleitungen ab oder legt diese fest.Gets or sets the maximum number of allowed HTTP redirects.

MaxConnectionsPerServer

Ruft die maximale Anzahl gleichzeitiger TCP-Verbindungen ab, die für einen einzelnen Server zulässig sind, oder legt diese fest.Gets or sets the maximum number of simultaneous TCP connections allowed to a single server.

MaxResponseDrainSize

Ruft die maximale Datenmenge aus Antworten in Byte ab oder legt diese fest.Gets or sets the maximum amount of data that can be drained from responses in bytes.

MaxResponseHeadersLength

Ruft die maximale Länge des Antwortheaders in Kilobyte (1024 Byte) ab oder legt diese fest.Gets or sets the maximum length, in kilobytes (1024 bytes), of the response headers.

PlaintextStreamFilter
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

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

PreAuthenticate

Ruft einen Wert ab, der angibt, ob vom Handler mit der Anforderung ein Autorisierungsheader gesendet wird, oder legt diesen fest.Gets or sets a value that indicates whether the handler sends an Authorization header with the request.

Properties
Proxy

Ruft den benutzerdefinierten Proxy ab, wenn die  UseProxy-Eigenschaft  true ist, oder legt diesen fest.Gets or sets the custom proxy when the UseProxy property is true.

RequestHeaderEncodingSelector

Ruft einen Rückruf ab, der die Encoding zum Codieren von Anforderungs Header Werten auswählt, oder legt ihn fest.Gets or sets a callback that selects the Encoding to encode request header values.

ResponseDrainTimeout

Ruft die Wartezeit für das Entnehmen von Daten aus Antworten ab oder legt sie fest.Gets or sets the timespan to wait for data to be drained from responses.

ResponseHeaderEncodingSelector

Ruft einen Rückruf ab, der die Encoding zum Decodieren von Antwortheader Werten auswählt, oder legt ihn fest.Gets or sets a callback that selects the Encoding to decode response header values.

SslOptions

Ruft die Optionen ab, die für die TLS-Clientauthentifizierung verwendet werden, oder legt diese fest.Gets or sets the set of options used for client TLS authentication.

UseCookies

Ruft einen Wert ab, der angibt, ob die Handler Cookies verwenden sollen, oder legt ihn fest.Gets or sets a value that indicates whether the handler should use cookies.

UseProxy

Ruft einen Wert ab, der angibt, ob der Handler einen Proxy verwenden sollte, oder legt ihn fest.Gets or sets a value that indicates whether the handler should use a proxy.

Methoden

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.

(Geerbt von HttpMessageHandler)
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.

(Geerbt von HttpMessageHandler)
Equals(Object)

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

(Geerbt von Object)
GetHashCode()

Fungiert als Standardhashfunktion.Serves as the default hash function.

(Geerbt von Object)
GetType()

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

(Geerbt von Object)
MemberwiseClone()

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

(Geerbt von Object)
Send(HttpRequestMessage, CancellationToken)

Sendet eine HTTP-Anforderung mit der angegebenen Anforderung und einem Abbruchtoken, wenn eine Überschreibung in einer abgeleiteten Klasse erfolgt.When overridden in a derived class, sends an HTTP request with the specified request and cancellation token. Löst andernfalls eine NotSupportedException aus.Otherwise, throws a NotSupportedException.

(Geerbt von HttpMessageHandler)
SendAsync(HttpRequestMessage, CancellationToken)

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

(Geerbt von HttpMessageHandler)
ToString()

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

(Geerbt von Object)

Gilt für: