SocketsHttpHandler Třída
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Poskytuje výchozí obslužnou rutinu zpráv, kterou HttpClient používá v .NET Core 2.1 a novějších verzích.
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
- Dědičnost
- Atributy
Poznámky
Počínaje .NET Core 2.1 třída poskytuje implementaci používanou síťovými třídami HTTP vyšší úrovně, SocketsHttpHandler
jako HttpClientje . Použití SocketsHttpHandler
nabízí řadu výhod:
Výrazné zlepšení výkonu ve srovnání s předchozí implementací.
Odstranění závislostí platforem, což zjednodušuje nasazení a údržbu. Například
libcurl
už není závislost na .NET Core pro macOS a .NET Core pro Linux.Konzistentní chování napříč všemi platformami .NET
Pokud je tato změna nežádoucí a používáte .NET Core 2.1-3.1, můžete aplikaci nakonfigurovat tak, aby místo toho používala starší System.Net.Http.HttpClientHandler třídu, a to několika způsoby:
Zavoláním AppContext.SetSwitch metody následujícím způsobem:
AppContext.SetSwitch("System.Net.Http.UseSocketsHttpHandler", false);
AppContext.SetSwitch("System.Net.Http.UseSocketsHttpHandler", False)
Definováním
System.Net.Http.UseSocketsHttpHandler
přepínače v konfiguračním souboru .netcore.runtimeconfig.json :"runtimeOptions": { "configProperties": { "System.Net.Http.UseSocketsHttpHandler": false } }
Definováním proměnné prostředí s názvem
DOTNET_SYSTEM_NET_HTTP_USESOCKETSHTTPHANDLER
a jejím nastavením na hodnotu nebofalse
0.
Tyto možnosti konfigurace nejsou od verze .NET 5 dostupné.
Konstruktory
SocketsHttpHandler() |
Vytvoří instanci SocketsHttpHandler třídy. |
Vlastnosti
ActivityHeadersPropagator |
Získá nebo nastaví šíření použít při šíření distribuované trasování a kontextu.
Pomocí |
AllowAutoRedirect |
Získá nebo nastaví hodnotu, která označuje, zda obslužná rutina má následovat odpovědi přesměrování. |
AutomaticDecompression |
Získá nebo nastaví typ metody dekomprese používané obslužnou rutinou pro automatické dekompresi http obsah odpovědi. |
ConnectCallback |
Získá nebo nastaví vlastní zpětné volání používané k otevření nových připojení. |
ConnectTimeout |
Získá nebo nastaví časový rozsah čekání před vypršením časového limitu navazování připojení. |
CookieContainer |
Získá nebo nastaví objekt kontejneru spravovaného souboru cookie. |
Credentials |
Získá nebo nastaví ověřovací informace používané touto obslužnou rutinou. |
DefaultProxyCredentials |
Při použití výchozího (systémového) proxy serveru získá nebo nastaví přihlašovací údaje použité k odeslání na výchozí proxy server k ověření. |
EnableMultipleHttp2Connections |
Získá nebo nastaví hodnotu, která označuje, zda lze vytvořit další připojení HTTP/2 ke stejnému serveru při dosažení maximálního počtu souběžných datových proudů na všech existujících připojeních. |
Expect100ContinueTimeout |
Získá nebo nastaví hodnotu časového limitu pro server HTTP 100 Continue odpověď. |
InitialHttp2StreamWindowSize |
Definuje počáteční velikost okna příjmu datového proudu HTTP2 pro všechna připojení otevřená tímto SocketsHttpHandlerobjektem . |
IsSupported |
Získá hodnotu, která označuje, zda je obslužná rutina podporována na aktuální platformě. |
KeepAlivePingDelay |
Získá nebo nastaví zpoždění příkazu ping pro zachování připojení. |
KeepAlivePingPolicy |
Získá nebo nastaví chování příkazu ping keep alive. |
KeepAlivePingTimeout |
Získá nebo nastaví časový limit příkazu Ping pro zachování připojení. |
MaxAutomaticRedirections |
Získá nebo nastaví maximální počet povolených přesměrování HTTP. |
MaxConnectionsPerServer |
Získá nebo nastaví maximální počet souběžných připojení TCP povolených k jednomu serveru. |
MaxResponseDrainSize |
Získá nebo nastaví maximální množství dat, které lze vyprázdnit z odpovědí v bajtech. |
MaxResponseHeadersLength |
Získá nebo nastaví maximální délku hlaviček odpovědi v kilobajtech (1024 bajtů). |
MeterFactory |
Získá nebo nastaví IMeterFactory k vytvoření vlastní Meter pro SocketsHttpHandler instanci. |
PlaintextStreamFilter |
Získá nebo nastaví vlastní zpětné volání, které poskytuje přístup k prostému textu protokolu HTTP stream. |
PooledConnectionIdleTimeout |
Získá nebo nastaví, jak dlouho může být připojení ve fondu nečinné, aby bylo považováno za opakovaně použitelné. |
PooledConnectionLifetime |
Získá nebo nastaví, jak dlouho může být připojení ve fondu považováno za opakovaně použitelné. |
PreAuthenticate |
Získá nebo nastaví hodnotu, která označuje, zda obslužná rutina odešle autorizační hlavičku s požadavkem. |
Properties |
Získá zapisovatelný slovník (tj. mapu) vlastních vlastností pro požadavky HttpClient. Slovník je inicializován prázdný; Můžete vložit a dotazovat páry klíč-hodnota pro vlastní obslužné rutiny a speciální zpracování. |
Proxy |
Získá nebo nastaví vlastní proxy server, když UseProxy je |
RequestHeaderEncodingSelector |
Získá nebo nastaví zpětné volání, které vybere kódovat hodnoty hlavičky Encoding požadavku. |
ResponseDrainTimeout |
Získá nebo nastaví časový rozsah čekání na vyprázdnění dat z odpovědí. |
ResponseHeaderEncodingSelector |
Získá nebo nastaví zpětné volání, které vybere Encoding k dekódování hodnot hlavičky odpovědi. |
SslOptions |
Získá nebo nastaví sadu možností používaných pro ověřování TLS klienta. |
UseCookies |
Získá nebo nastaví hodnotu, která označuje, zda obslužná rutina má používat soubory cookie. |
UseProxy |
Získá nebo nastaví hodnotu, která označuje, zda obslužná rutina má použít proxy. |
Metody
Dispose() |
Uvolní nespravované prostředky a odstraní spravované prostředky používané nástrojem HttpMessageHandler. (Zděděno od HttpMessageHandler) |
Dispose(Boolean) |
Uvolní nespravované prostředky používané a HttpMessageHandler volitelně odstraní spravované prostředky. (Zděděno od HttpMessageHandler) |
Equals(Object) |
Určí, zda se zadaný objekt rovná aktuálnímu objektu. (Zděděno od Object) |
GetHashCode() |
Slouží jako výchozí hashovací funkce. (Zděděno od Object) |
GetType() |
Type Získá z aktuální instance. (Zděděno od Object) |
MemberwiseClone() |
Vytvoří mělkou kopii aktuálního Objectsouboru . (Zděděno od Object) |
Send(HttpRequestMessage, CancellationToken) |
Při přepsání v odvozené třídě odešle požadavek HTTP se zadaným tokenem požadavku a zrušení. V opačném případě vyvolá NotSupportedException. (Zděděno od HttpMessageHandler) |
SendAsync(HttpRequestMessage, CancellationToken) |
Odešle požadavek HTTP jako asynchronní operaci. (Zděděno od HttpMessageHandler) |
ToString() |
Vrátí řetězec, který představuje aktuální objekt. (Zděděno od Object) |
Platí pro
Váš názor
https://aka.ms/ContentUserFeedback.
Připravujeme: V průběhu roku 2024 budeme postupně vyřazovat problémy z GitHub coby mechanismus zpětné vazby pro obsah a nahrazovat ho novým systémem zpětné vazby. Další informace naleznete v tématu:Odeslat a zobrazit názory pro