SocketsHttpHandler Sınıf
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
.NET Core 2.1 ve sonraki sürümlerde HttpClient tarafından kullanılan varsayılan ileti işleyicisini sağlar.
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
- Devralma
- Öznitelikler
Açıklamalar
.NET Core 2.1'den başlayarak SocketsHttpHandler
sınıfı, HttpClientgibi üst düzey HTTP ağ sınıfları tarafından kullanılan uygulamayı sağlar.
SocketsHttpHandler
kullanımı çeşitli avantajlar sunar:
Önceki uygulamayla karşılaştırıldığında önemli bir performans artışı.
Dağıtım ve bakımı basitleştiren platform bağımlılıklarının ortadan kaldırılması. Örneğin
libcurl
artık macOS için .NET Core ve Linux için .NET Core bağımlılığı değildir.Tüm .NET platformları genelinde tutarlı davranış.
Bu değişiklik istenmeyen bir durumsa ve .NET Core 2.1-3.1 kullanıyorsanız, uygulamanızı çeşitli yollarla yerine eski System.Net.Http.HttpClientHandler sınıfını kullanacak şekilde yapılandırabilirsiniz:
AppContext.SetSwitch yöntemini aşağıdaki gibi çağırarak:
AppContext.SetSwitch("System.Net.Http.UseSocketsHttpHandler", false);
AppContext.SetSwitch("System.Net.Http.UseSocketsHttpHandler", False)
.netcore.runtimeconfig.json yapılandırma dosyasında
System.Net.Http.UseSocketsHttpHandler
anahtarını tanımlayarak:"runtimeOptions": { "configProperties": { "System.Net.Http.UseSocketsHttpHandler": false } }
DOTNET_SYSTEM_NET_HTTP_USESOCKETSHTTPHANDLER
adlı bir ortam değişkeni tanımlayıpfalse
veya 0 olarak ayarlayarak.
Bu yapılandırma seçenekleri .NET 5 ile başlayarak kullanılamaz.
Oluşturucular
SocketsHttpHandler() |
SocketsHttpHandler sınıfının bir örneğini oluşturur. |
Özellikler
ActivityHeadersPropagator |
Dağıtılmış izleme ve bağlam yayılırken kullanılacak yayıcıyı alır veya ayarlar.
Yayma özelliğini devre dışı bırakmak için |
AllowAutoRedirect |
İşleyicinin yeniden yönlendirme yanıtlarını izlemesi gerekip gerekmediğini belirten bir değer alır veya ayarlar. |
AutomaticDecompression |
İŞleyici tarafından HTTP içerik yanıtının otomatik sıkıştırmasını açmak için kullanılan sıkıştırma yönteminin türünü alır veya ayarlar. |
ConnectCallback |
Yeni bağlantıları açmak için kullanılan özel bir geri çağırma alır veya ayarlar. |
ConnectTimeout |
Bağlantı kurulmadan önce zaman aralığını beklemeye alır veya ayarlar. |
CookieContainer |
Yönetilen tanımlama bilgisi kapsayıcı nesnesini alır veya ayarlar. |
Credentials |
Bu işleyici tarafından kullanılan kimlik doğrulama bilgilerini alır veya ayarlar. |
DefaultProxyCredentials |
Varsayılan (sistem) ara sunucusu kullanıldığında, kimlik doğrulaması için varsayılan ara sunucuya göndermek için kullanılan kimlik bilgilerini alır veya ayarlar. |
EnableMultipleHttp2Connections |
Aynı sunucuya ek HTTP/2 bağlantılarının kurulup kurulamayacağını gösteren bir değer alır veya ayarlar. |
EnableMultipleHttp3Connections |
Aynı sunucuya ek HTTP/3 bağlantılarının kurulup kurulamayacağını gösteren bir değer alır veya ayarlar. |
Expect100ContinueTimeout |
SUNUCU HTTP 100 Devam yanıtı için zaman aşımı değerini alır veya ayarlar. |
InitialHttp2StreamWindowSize |
Bu SocketsHttpHandlertarafından açılan tüm bağlantılar için ilk HTTP2 akışı alma penceresi boyutunu tanımlar. |
IsSupported |
İşleyicinin geçerli platformda desteklenip desteklenmediğini gösteren bir değer alır. |
KeepAlivePingDelay |
Canlı tutma ping gecikmesini alır veya ayarlar. |
KeepAlivePingPolicy |
Canlı tutma ping davranışını alır veya ayarlar. |
KeepAlivePingTimeout |
Etkin tutma ping zaman aşımını alır veya ayarlar. |
MaxAutomaticRedirections |
İzin verilen en fazla HTTP yeniden yönlendirme sayısını alır veya ayarlar. |
MaxConnectionsPerServer |
Tek bir sunucuya izin verilen en fazla eşzamanlı TCP bağlantısı sayısını alır veya ayarlar. |
MaxResponseDrainSize |
Yanıtlardan bayt cinsinden boşaltılabilir maksimum veri miktarını alır veya ayarlar. |
MaxResponseHeadersLength |
Yanıt üst bilgilerinin kilobayt (1024 bayt) cinsinden uzunluk üst sınırını alır veya ayarlar. |
MeterFactory |
SocketsHttpHandler örneği için özel bir Meter oluşturmak için IMeterFactory alır veya ayarlar. |
PlaintextStreamFilter |
Düz metin HTTP protokolü akışına erişim sağlayan özel bir geri çağırma alır veya ayarlar. |
PooledConnectionIdleTimeout |
Yeniden kullanılabilir olarak kabul edilecek bir bağlantının havuzda ne kadar süre boşta olabileceğini alır veya ayarlar. |
PooledConnectionLifetime |
Bir bağlantının havuzda ne kadar süreyle yeniden kullanılabilir olarak kabul edilebileceğini alır veya ayarlar. |
PreAuthenticate |
İşleyicinin istekle bir Yetkilendirme üst bilgisi gönderip göndermediğini belirten bir değer alır veya ayarlar. |
Properties |
HttpClient istekleri için özel özelliklerin yazılabilir bir sözlüğü (bir eşleme) alır. Sözlük boş başlatılır; özel işleyicileriniz ve özel işlemeniz için anahtar-değer çiftleri ekleyebilir ve sorgulayabilirsiniz. |
Proxy |
UseProxy özelliği |
RequestHeaderEncodingSelector |
İstek üst bilgisi değerlerini kodlamak için Encoding seçen bir geri çağırma alır veya ayarlar. |
ResponseDrainTimeout |
Verilerin yanıtlardan boşaltılması için zaman aralığını alır veya ayarlar. |
ResponseHeaderEncodingSelector |
Yanıt üst bilgisi değerlerinin kodunu çözmek için Encoding seçen bir geri çağırma alır veya ayarlar. |
SslOptions |
İstemci TLS kimlik doğrulaması için kullanılan seçenek kümesini alır veya ayarlar. |
UseCookies |
İşleyicinin tanımlama bilgilerini kullanıp kullanmayacağını belirten bir değer alır veya ayarlar. |
UseProxy |
İşleyicinin ara sunucu kullanıp kullanmayacağını belirten bir değer alır veya ayarlar. |
Yöntemler
Dispose() |
Yönetilmeyen kaynakları serbest bırakır ve HttpMessageHandlertarafından kullanılan yönetilen kaynakları atılır. (Devralındığı yer: HttpMessageHandler) |
Dispose(Boolean) |
HttpMessageHandler tarafından kullanılan yönetilmeyen kaynakları serbest bırakır ve isteğe bağlı olarak yönetilen kaynakları atılır. (Devralındığı yer: HttpMessageHandler) |
Equals(Object) |
Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler. (Devralındığı yer: Object) |
GetHashCode() |
Varsayılan karma işlevi işlevi görür. (Devralındığı yer: Object) |
GetType() |
Geçerli örneğin Type alır. (Devralındığı yer: Object) |
MemberwiseClone() |
Geçerli Objectbasit bir kopyasını oluşturur. (Devralındığı yer: Object) |
Send(HttpRequestMessage, CancellationToken) |
Türetilmiş bir sınıfta geçersiz kılındığında, belirtilen istek ve iptal belirteciyle bir HTTP isteği gönderir. Aksi takdirde, bir NotSupportedExceptionoluşturur. (Devralındığı yer: HttpMessageHandler) |
SendAsync(HttpRequestMessage, CancellationToken) |
Http isteğini zaman uyumsuz bir işlem olarak gönderin. (Devralındığı yer: HttpMessageHandler) |
ToString() |
Geçerli nesneyi temsil eden bir dize döndürür. (Devralındığı yer: Object) |