WinHttpHandler Sınıf

Tanım

İletileri Windows'un WinHTTP arabirimine göre işler. Bu sınıf, sunucu ortamlarında kullanım için tasarlanmıştır.

public ref class WinHttpHandler : System::Net::Http::HttpMessageHandler
public class WinHttpHandler : System.Net.Http.HttpMessageHandler
type WinHttpHandler = class
    inherit HttpMessageHandler
Public Class WinHttpHandler
Inherits HttpMessageHandler
Devralma
WinHttpHandler

Açıklamalar

WinHttpHandler gibi HttpClientHandlerdiğer mevcut sınıflara benzer. WinHttpHandler bir örneğin altında bir işleyici sağlar ve http isteklerini bir HttpClient sunucuya göndermek ve sunucu yanıtlarını almak için kullanılır. Uygulama, WinHttpHandler HTTP/2'ye kadar OLAN HTTP sürümlerini destekler.

WinHttpHandler, ASP.NET Core ve HTTP sunucularıyla iletişim kuran diğer .NET uygulamaları tarafından öncelikli olarak sunucu ortamlarında kullanılmak üzere tasarlanmıştır. WinHttpHandler ayrıca geliştiricilere uygulamanın HTTP iletişimi HttpClientHandler üzerinde sınıftan daha ayrıntılı denetim sağlar. Bu, geliştiricilerin daha gelişmiş HTTP senaryoları uygulamasına veya sistem varsayılanlarını değiştirmesine (örneğin ara sunucu ayarları, zaman aşımları ve sunucu SSL sertifika doğrulaması) olanak tanır.

WinHttpHandler yerine geçecek şekilde HttpClientHandlertasarlanmamıştır. Bunun yerine, yetersiz olduğu HttpClientHandler senaryolar için sağlanan daha gelişmiş bir sürümdür. WinHttpHandler , Windows'un WinHTTP arabiriminde ince bir sarmalayıcı olarak uygulanır ve yalnızca Windows sistemlerinde desteklenir.

Birden çok işleyiciden oluşan bir zincir kullanılırken, WinHttpHandler zincirin en altında olmalıdır.

Bu sınıf, NuGet paketi olarak yüklenerek Masaüstü uygulamalarında da kullanılabilir. Daha fazla bilgi için bkz . System.Net.Http.WinHttpHandler NuGet paketi.

.NET 5'den başlayarak artık WinHttpHandler .NET çalışma zamanının bir parçası olarak System.Net.Http.dll derlemesine dahil değildir. Daha fazla bilgi için bkz. WinHttpHandler .NET çalışma zamanından kaldırıldı.

Oluşturucular

WinHttpHandler()

WinHttpHandler sınıfının yeni bir örneğini başlatır.

Özellikler

AutomaticDecompression

İŞleyici tarafından HTTP içerik yanıtının otomatik olarak sıkıştırmasını açmak için kullanılan sıkıştırma yönteminin türünü alır veya ayarlar.

AutomaticRedirection

İşleyicinin HTTP yeniden yönlendirme yanıtlarını izlemesi gerekip gerekmediğini belirten bir değer alır veya ayarlar.

CheckCertificateRevocationList

SSL sertifika doğrulaması sırasında sertifikaların iptal listesinin denetlenip denetlenmeyeceğini belirten bir değer alır veya ayarlar.

ClientCertificateOption

Sertifikanın sertifika deposundan otomatik olarak seçildiğini veya çağıranın belirli bir istemci sertifikasını geçirmesine izin verilip verilmediğini belirten bir değer alır veya ayarlar.

ClientCertificates

özelliği olarak ayarlandıysa ClientCertificateOptionManual, işleyici tarafından istemci kimlik doğrulaması için kullanılan istemci kimlik doğrulaması SSL sertifikalarından oluşan bir koleksiyon alır.

CookieContainer

Yönetilen tanımlama bilgisi kapsayıcı nesnesini alır veya ayarlar. Bu özellik yalnızca özelliği UseSpecifiedCookieContainer olarak ayarlandığında kullanılır CookieUsePolicy . Aksi takdirde yöntemi SendAsync(HttpRequestMessage, CancellationToken) bir özel durum oluşturur.

CookieUsePolicy

Tanımlama bilgilerinin nasıl yönetileceğini ve kullanılacağını belirten bir değer alır veya ayarlar. Geliştiriciler tanımlama bilgilerini yoksaymayı, işleyicinin bunları otomatik olarak yönetmesine veya bir CookieContainer nesne kullanarak el ile işlemesine izin vermeyi seçebilir.

DefaultProxyCredentials

Kullanıcının kimliğini doğrulamak için kullanılan kimlik bilgilerini bir kimlik doğrulama ara sunucusuna alır veya ayarlar.

EnableMultipleHttp2Connections

Var olan tüm bağlantılarda eş zamanlı akış sayısı üst sınırına ulaşıldığında aynı sunucuya ek HTTP/2 bağlantılarının kurulup kurulamayacağını belirten bir değer 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 TCP bağlantısı sayısını alır veya ayarlar.

MaxResponseDrainSize

Yanıtlardan bayt cinsinden boşaltılacak en fazla veri miktarını alır veya ayarlar.

MaxResponseHeadersLength

Sunucu yanıtından üst bilgi bölümünün en büyük boyutunu bayt cinsinden 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

İstekler için özel özelliklerin yazılabilir bir sözlüğünü (yani bir eşlemeyi HttpClient ) 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

Özellik özel ara sunucu WindowsProxyUsePolicy kullanacak şekilde ayarlandığında özel proxy'yi alır veya ayarlar.

ReceiveDataTimeout

Sunucudan yanıtın veri bölümünü almak için zaman aşımını alır veya ayarlar.

ReceiveHeadersTimeout

Sunucudan yanıtın üst bilgilerini almak için zaman aşımını alır veya ayarlar.

SendTimeout

İstek göndermek için zaman aşımını alır veya ayarlar.

ServerCertificateValidationCallback

Sunucu sertifikasını doğrulamak için bir geri çağırma yöntemi alır veya ayarlar. Bu geri arama, SSL el sıkışmasının bir parçasıdır.

ServerCredentials

İstemci tarafından sunucuda kimlik doğrulaması yapmak için kullanılacak kimlik bilgilerini alır veya ayarlar.

SslProtocols

İstemci tarafından desteklenen TLS/SSL protokolleri koleksiyonunu alır veya ayarlar.

TcpKeepAliveEnabled

TCP etkin tutma özelliğinin etkinleştirilip etkinleştirilmediğini belirten bir değer alır veya ayarlar.

TcpKeepAliveInterval

TCP etkin tutma aralığını alır veya ayarlar.

TcpKeepAliveTime

TCP etkin tutma zaman aşımını alır veya ayarlar.

WindowsProxyUsePolicy

Proxy ayarını alır veya ayarlar. Bu özellik ara sunucuyu devre dışı bırakmak, özel bir ara sunucu kullanmak veya makinede WinHTTP veya WinInet proxy ayarlarını kullanmak için ayarlanabilir.

Yöntemler

Dispose()

Yönetilmeyen kaynakları serbest bırakır ve tarafından HttpMessageHandlerkullanılan yönetilen kaynakları atılır.

(Devralındığı yer: HttpMessageHandler)
Dispose(Boolean)

tarafından WinHttpHandlerkullanılan yönetilmeyen kaynakları serbest bırakır ve isteğe bağlı olarak yönetilen kaynakları atılır.

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()

Type Geçerli örneğini alır.

(Devralındığı yer: Object)
MemberwiseClone()

Geçerli Objectöğesinin sığ 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önderir.

ToString()

Geçerli nesneyi temsil eden dizeyi döndürür.

(Devralındığı yer: Object)

Şunlara uygulanır