WinHttpHandler Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Gestisce i messaggi in base all'interfaccia WinHTTP di Windows. Questa classe deve essere usata 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à
Commenti
WinHttpHandler è simile ad altre classi esistenti, ad HttpClientHandleresempio . 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 le versioni HTTP fino a HTTP/2.
WinHttpHandlerè progettato per essere usato principalmente negli ambienti server da ASP.NET Core e da altre applicazioni .NET che comunicano con i server HTTP. WinHttpHandler offre inoltre agli sviluppatori un controllo più granulare sulla comunicazione HTTP dell'applicazione rispetto alla HttpClientHandler classe . Ciò consente agli sviluppatori di implementare scenari HTTP più avanzati o di modificare le impostazioni predefinite del sistema , ad esempio impostazioni proxy, timeout e convalida del certificato SSL del server.
WinHttpHandler non è destinato a essere una sostituzione di HttpClientHandler. È invece una versione più avanzata fornita per gli scenari in cui HttpClientHandler non è sufficiente. WinHttpHandler viene implementato come thin wrapper 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.
Questa classe è disponibile anche per l'uso nelle app desktop tramite l'installazione come pacchetto NuGet. Per altre informazioni, vedere Pacchetto NuGet System.Net.Http.WinHttpHandler.
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.
Costruttori
WinHttpHandler() |
Inizializza una nuova istanza della classe WinHttpHandler. |
Proprietà
AutomaticDecompression |
Ottiene o imposta il tipo di metodo di decompressione usato dal gestore per la decompressione automatica della risposta del 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 verificare l'elenco di revoche di certificati (CRL) durante la convalida del certificato SSL. |
ClientCertificateOption |
Ottiene o imposta un valore che indica se il certificato viene selezionato automaticamente dall'archivio certificati oppure se il chiamante è autorizzato a passare un certificato client specifico. |
ClientCertificates |
Ottiene una raccolta di certificati SSL di autenticazione client che vengono usati per l'autenticazione client da parte del gestore, se la proprietà ClientCertificateOption è impostata su |
CookieContainer |
Ottiene o imposta l'oggetto contenitore del cookie gestito. Questa proprietà viene usata solo quando la proprietà CookieUsePolicy è impostata su UseSpecifiedCookieContainer. In caso contrario, il metodo SendAsync(HttpRequestMessage, CancellationToken) genererà un'eccezione. |
CookieUsePolicy |
Ottiene o imposta un valore che indica come gestire e usare i cookie. Gli sviluppatori possono scegliere di ignorare i cookie, consentire al gestore di gestirli automaticamente o gestirli manualmente tramite un oggetto CookieContainer. |
DefaultProxyCredentials |
Ottiene o imposta le credenziali usate per autenticare l'utente con un proxy di 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 possono essere svuotati dalle risposte in byte. |
MaxResponseHeadersLength |
Ottiene o imposta la dimensione massima della parte di intestazione dalla risposta del server in byte. |
PreAuthenticate |
Ottiene o imposta un valore che indica se il gestore invia un'intestazione di autorizzazione con la richiesta. |
Properties |
Ottiene un dizionario modificabile (una mappa) delle proprietà personalizzate per le richieste HttpClient. Il dizionario viene inizializzato vuoto. È possibile inserire e cercare coppie chiave-valore per i gestori personalizzati e l'elaborazione speciale. |
Proxy |
Ottiene o imposta il proxy personalizzato quando la proprietà WindowsProxyUsePolicy è 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 callback per convalidare il certificato del server. Questo callback fa parte dell'handshake SSL. |
ServerCredentials |
Ottiene o imposta le credenziali che devono essere usate dal client per l'autenticazione con il 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 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
Dispose() |
Rilascia le risorse non gestite ed elimina le risorse gestite utilizzate dall'oggetto HttpMessageHandler. (Ereditato da HttpMessageHandler) |
Dispose(Boolean) |
Rilascia le risorse non gestite usate da WinHttpHandler e, 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 l'oggetto Type dell'istanza corrente. (Ereditato da Object) |
MemberwiseClone() |
Crea una copia superficiale dell'oggetto Object corrente. (Ereditato da Object) |
Send(HttpRequestMessage, CancellationToken) |
Quando viene eseguito l'override in una classe derivata, invia una richiesta HTTP con la richiesta e il token di annullamento specificati. in caso contrario, genera NotSupportedException. (Ereditato da HttpMessageHandler) |
SendAsync(HttpRequestMessage, CancellationToken) |
Invia una richiesta HTTP come operazione asincrona. |
ToString() |
Restituisce una stringa che rappresenta l'oggetto corrente. (Ereditato da Object) |