Condividi tramite


WinHttpHandler Classe

Definizione

Gestisce i messaggi in base all'interfaccia WinHTTP di Windows. Questa classe è destinata all'uso in ambienti server.

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
Ereditarietà
WinHttpHandler

Commenti

WinHttpHandler è simile ad altre classi esistenti, HttpClientHandlerad esempio . WinHttpHandler fornisce un gestore sotto un'istanza HttpClient e viene usato per inviare richieste HTTP a un server e ricevere risposte del server. L'implementazione WinHttpHandler supporta versioni HTTP fino a HTTP/2.

WinHttpHandler fornisce agli sviluppatori un controllo più granulare sulla comunicazione HTTP dell'applicazione rispetto alla HttpClientHandler classe . In questo modo gli sviluppatori possono implementare scenari HTTP più avanzati o modificare le impostazioni predefinite del sistema( ad esempio, impostazioni proxy, timeout e convalida del certificato SSL del server).

WinHttpHandler non deve essere una sostituzione di HttpClientHandler. È invece una versione più avanzata fornita per gli scenari in cui HttpClientHandler non è sufficiente. WinHttpHandler viene implementato come wrapper sottile nell'interfaccia WinHTTP di Windows ed è supportato solo nei sistemi Windows.

Quando si usa una catena di più gestori, WinHttpHandler deve trovarsi nella parte inferiore della catena.

A partire da .NET 5, WinHttpHandler non è più incluso nell'assembly System.Net.Http.dll come parte del runtime .NET. Per altre informazioni, vedere WinHttpHandler rimosso dal runtime .NET.

Intestazioni finali

A partire dalla versione 6.0.0, WinHttpHandler supporta le intestazioni finali, note anche come trailer (RFC 7230 - 4.1.2. Parte trailer in blocchi).

Il supporto trailer viene implementato tramite il WINHTTP_QUERY_FLAG_TRAILERSflag di informazioni sulle query , introdotto in Windows 11, versione 21H2 (10.0; Build 22000). Nei sistemi Windows in cui WINHTTP_QUERY_FLAG_TRAILERS non è supportato, i trailer vengono ignorati.

Costruttori

Nome Descrizione
WinHttpHandler()

Inizializza una nuova istanza della classe WinHttpHandler.

Proprietà

Nome Descrizione
AutomaticDecompression

Ottiene o imposta il tipo di metodo di decompressione utilizzato dal gestore per la decompressione automatica della risposta al contenuto HTTP.

AutomaticRedirection

Ottiene o imposta un valore che indica se il gestore deve seguire le risposte di reindirizzamento HTTP.

CheckCertificateRevocationList

Ottiene o imposta un valore che indica se controllare l'elenco di revoche di certificati durante la convalida del certificato SSL.

ClientCertificateOption

Ottiene o imposta un valore che indica se il certificato viene selezionato automaticamente dall'archivio certificati o se il chiamante può passare un certificato client specifico.

ClientCertificates

Ottiene una raccolta di certificati SSL di autenticazione client utilizzati per l'autenticazione client dal gestore se la ClientCertificateOption proprietà è impostata su Manual.

CookieContainer

Ottiene o imposta l'oggetto contenitore di cookie gestiti. Questa proprietà viene utilizzata solo quando la CookieUsePolicy proprietà è impostata su UseSpecifiedCookieContainer. In caso contrario, il SendAsync(HttpRequestMessage, CancellationToken) metodo genererà un'eccezione.

CookieUsePolicy

Ottiene o imposta un valore che indica come devono essere gestiti e usati i cookie. Gli sviluppatori possono scegliere di ignorare i cookie, consentire al gestore di gestirli automaticamente o gestirli manualmente usando un CookieContainer oggetto .

DefaultProxyCredentials

Quando viene usato il proxy predefinito (di sistema), ottiene o imposta le credenziali usate per l'invio al server proxy predefinito per l'autenticazione.

EnableMultipleHttp2Connections

Ottiene o imposta un valore che indica se è possibile stabilire connessioni HTTP/2 aggiuntive allo stesso server quando viene raggiunto il numero massimo di flussi simultanei in tutte le connessioni esistenti.

MaxAutomaticRedirections

Ottiene o imposta il numero massimo di reindirizzamenti HTTP consentiti.

MaxConnectionsPerServer

Ottiene o imposta il numero massimo di connessioni TCP consentite a un singolo server.

MaxResponseDrainSize

Ottiene o imposta la quantità massima di dati che è possibile svuotare dalle risposte in byte.

MaxResponseHeadersLength

Ottiene o imposta la lunghezza massima, espressa in kilobyte (1024 byte) delle intestazioni della risposta.

PreAuthenticate

Ottiene o imposta un valore che indica se il gestore invia un'intestazione di autorizzazione con la richiesta.

Properties

Ottiene un dizionario scrivibile , ovvero una mappa, di proprietà personalizzate per le HttpClient richieste. Il dizionario viene inizializzato vuoto; è possibile inserire ed eseguire query su coppie chiave-valore per i gestori personalizzati e l'elaborazione speciale.

Proxy

Ottiene o imposta il proxy personalizzato quando la WindowsProxyUsePolicy proprietà è impostata per l'uso di un proxy personalizzato.

ReceiveDataTimeout

Ottiene o imposta il timeout per la ricezione della parte di dati di una risposta dal server.

ReceiveHeadersTimeout

Ottiene o imposta il timeout per la ricezione delle intestazioni di una risposta dal server.

SendTimeout

Ottiene o imposta il timeout per l'invio di una richiesta.

ServerCertificateValidationCallback

Ottiene o imposta un metodo di callback per convalidare il certificato del server. Questo callback fa parte dell'handshake SSL.

ServerCredentials

Ottiene o imposta le credenziali da utilizzare dal client per l'autenticazione al server.

SslProtocols

Ottiene o imposta la raccolta di protocolli TLS/SSL supportati dal client.

TcpKeepAliveEnabled

Ottiene o imposta un valore che indica se tcp keep-alive è abilitato.

TcpKeepAliveInterval

Ottiene o imposta l'intervallo keep-alive TCP.

TcpKeepAliveTime

Ottiene o imposta il timeout keep-alive TCP.

WindowsProxyUsePolicy

Ottiene o imposta l'impostazione del proxy. Questa proprietà può essere impostata per disabilitare il proxy, usare un proxy personalizzato o usare le impostazioni proxy di WinHTTP o WinInet nel computer.

Metodi

Nome Descrizione
Dispose()

Rilascia le risorse non gestite ed elimina le risorse gestite usate da HttpMessageHandler.

(Ereditato da HttpMessageHandler)
Dispose(Boolean)

Rilascia le risorse non gestite usate da WinHttpHandlere, facoltativamente, elimina le risorse gestite.

Equals(Object)

Determina se l'oggetto specificato è uguale all'oggetto corrente.

(Ereditato da Object)
GetHashCode()

Funge da funzione hash predefinita.

(Ereditato da Object)
GetType()

Ottiene il Type dell'istanza corrente.

(Ereditato da Object)
MemberwiseClone()

Crea una copia superficiale del Objectcorrente.

(Ereditato da Object)
SendAsync(HttpRequestMessage, CancellationToken)

Invia una richiesta HTTP come operazione asincrona.

ToString()

Restituisce una stringa che rappresenta l'oggetto corrente.

(Ereditato da Object)

Si applica a