HttpClientHandler HttpClientHandler HttpClientHandler HttpClientHandler Class

Définition

Gestionnaire de messages par défaut utilisé par HttpClient dans le .NET Framework et .NET Core 2.0 et antérieur.The default message handler used by HttpClient in .NET Framework and .NET Core 2.0 and earlier.

public ref class HttpClientHandler : System::Net::Http::HttpMessageHandler
public class HttpClientHandler : System.Net.Http.HttpMessageHandler
type HttpClientHandler = class
    inherit HttpMessageHandler
Public Class HttpClientHandler
Inherits HttpMessageHandler
Héritage
HttpClientHandlerHttpClientHandlerHttpClientHandlerHttpClientHandler
Dérivé

Exemples

static async Task Main()
{
   // Create an HttpClientHandler object and set to use default credentials
   HttpClientHandler handler = new HttpClientHandler();
   handler.UseDefaultCredentials = true;

   // Create an HttpClient object
   HttpClient client = new HttpClient(handler);

   // Call asynchronous network methods in a try/catch block to handle exceptions
   try	
   {
      HttpResponseMessage response = await client.GetAsync("http://www.contoso.com/");

      response.EnsureSuccessStatusCode();

      string responseBody = await response.Content.ReadAsStringAsync();
      Console.WriteLine(responseBody);
   }  
   catch(HttpRequestException e)
   {
       Console.WriteLine("\nException Caught!");	
       Console.WriteLine("Message :{0} ",e.Message);
   }

   // Need to call dispose on the HttpClient and HttpClientHandler objects 
   // when done using them, so the app doesn't leak resources
   handler.Dispose(true);
   client.Dispose(true);
}

L’exemple de code précédent utilise un async Task Main() point d’entrée.The preceding code example uses an async Task Main() entry point. Cette fonctionnalité nécessite de c# 7.1 ou version ultérieure.That feature requires C# 7.1 or later.

Remarques

Le HttpClientHandler classe et les classes dérivées à partir de celui-ci permettent aux développeurs de configurer diverses options allant de proxys à l’authentification.The HttpClientHandler class and classes derived from it enable developers to configure a variety of options ranging from proxies to authentication.

HttpClientHandler dans .NET CoreHttpClientHandler in .NET Core

En commençant par .NET Core 2.1, le System.Net.Http.SocketsHttpHandler classe au lieu de HttpClientHandler fournit l’implémentation utilisée par HTTP de niveau supérieur API de mise en réseau.Starting with .NET Core 2.1, the System.Net.Http.SocketsHttpHandler class instead of HttpClientHandler provides the implementation used by higher-level HTTP networking APIs. Vous pouvez configurer votre application pour utiliser HttpClientHandler au lieu de cela dans une des manières suivantes :You can configure your application to use HttpClientHandler instead in any of the following ways:

  • En appelant le AppContext.SetSwitch méthode comme suit :By calling the AppContext.SetSwitch method as follows:

    AppContext.SetSwitch("System.Net.Http.UseSocketsHttpHandler", false);
    
    AppContext.SetSwitch("System.Net.Http.UseSocketsHttpHandler", False)
    
  • En définissant le System.Net.Http.UseSocketsHttpHandler basculer dans le . netcore.runtimeconfig.json fichier de configuration :By defining the System.Net.Http.UseSocketsHttpHandler switch in the .netcore.runtimeconfig.json configuration file:

    "runtimeOptions": {
      "configProperties": {
          "System.Net.Http.UseSocketsHttpHandler": false
      }
    }
    
  • En définissant une variable d’environnement nommée DOTNET_SYSTEM_NET_HTTP_USESOCKETSHTTPHANDLER et l’affectation soit false ou 0.By defining an environment variable named DOTNET_SYSTEM_NET_HTTP_USESOCKETSHTTPHANDLER and setting it to either false or 0.

Constructeurs

HttpClientHandler() HttpClientHandler() HttpClientHandler() HttpClientHandler()

Crée une instance d’une classe HttpClientHandler.Creates an instance of a HttpClientHandler class.

Propriétés

AllowAutoRedirect AllowAutoRedirect AllowAutoRedirect AllowAutoRedirect

Obtient ou définit une valeur qui indique si le gestionnaire doit suivre les réponses de redirection.Gets or sets a value that indicates whether the handler should follow redirection responses.

AutomaticDecompression AutomaticDecompression AutomaticDecompression AutomaticDecompression

Obtient ou définit le type de méthode de décompression utilisé par le gestionnaire pour la décompression automatique de la réponse du contenu HTTP.Gets or sets the type of decompression method used by the handler for automatic decompression of the HTTP content response.

CheckCertificateRevocationList CheckCertificateRevocationList CheckCertificateRevocationList CheckCertificateRevocationList

Obtient ou définit une valeur qui indique si le certificat est vérifié par rapport à la liste de révocation de l’autorité de certification.Gets or sets a value that indicates whether the certificate is checked against the certificate authority revocation list.

ClientCertificateOptions ClientCertificateOptions ClientCertificateOptions ClientCertificateOptions

Obtient ou définit une valeur qui indique si le certificat est automatiquement prélevé dans le magasin de certificats ou si l’appelant est autorisé à transmettre un certificat client spécifique.Gets or sets a value that indicates if the certificate is automatically picked from the certificate store or if the caller is allowed to pass in a specific client certificate.

ClientCertificates ClientCertificates ClientCertificates ClientCertificates

Obtient la collection de certificats de sécurité qui sont des requêtes associées au serveur.Gets the collection of security certificates that are associated requests to the server.

CookieContainer CookieContainer CookieContainer CookieContainer

Obtient ou définit le conteneur du cookie utilisé pour stocker des cookies de serveur par le gestionnaire.Gets or sets the cookie container used to store server cookies by the handler.

Credentials Credentials Credentials Credentials

Obtient ou définit les informations d’authentification utilisées par ce gestionnaire.Gets or sets authentication information used by this handler.

DangerousAcceptAnyServerCertificateValidator DangerousAcceptAnyServerCertificateValidator DangerousAcceptAnyServerCertificateValidator DangerousAcceptAnyServerCertificateValidator

Obtient un délégué mis en cache qui retourne toujours true.Gets a cached delegate that always returns true.

DefaultProxyCredentials DefaultProxyCredentials DefaultProxyCredentials DefaultProxyCredentials

Quand le proxy par défaut (système) est utilisé, obtient ou définit les informations d’identification à envoyer au serveur proxy par défaut pour l’authentification.When the default (system) proxy is being used, gets or sets the credentials to submit to the default proxy server for authentication. Le proxy par défaut est utilisé uniquement quand UseProxy a la valeur true et Proxy a la valeur null.The default proxy is used only when UseProxy is set to true and Proxy is set to null.

MaxAutomaticRedirections MaxAutomaticRedirections MaxAutomaticRedirections MaxAutomaticRedirections

Récupère ou définit le nombre maximal de redirections suivies par le gestionnaire.Gets or sets the maximum number of redirects that the handler follows.

MaxConnectionsPerServer MaxConnectionsPerServer MaxConnectionsPerServer MaxConnectionsPerServer

Obtient ou définit le nombre maximal de connexions simultanées (par point de terminaison de serveur) autorisé lors de l’établissement de demandes à l’aide d’un objet HttpClient.Gets or sets the maximum number of concurrent connections (per server endpoint) allowed when making requests using an HttpClient object. Notez que la limite est établie par point de terminaison de serveur : par exemple, une valeur de 256 permettrait 256 connexions simultanées à http://www.adatum.com/ et 256 autres à http://www.adventure-works.com/.Note that the limit is per server endpoint, so for example a value of 256 would permit 256 concurrent connections to http://www.adatum.com/ and another 256 to http://www.adventure-works.com/.

MaxRequestContentBufferSize MaxRequestContentBufferSize MaxRequestContentBufferSize MaxRequestContentBufferSize

Obtient ou définit la taille de mémoire tampon du contenu de requête maximale utilisée par le gestionnaire.Gets or sets the maximum request content buffer size used by the handler.

MaxResponseHeadersLength MaxResponseHeadersLength MaxResponseHeadersLength MaxResponseHeadersLength

Obtient ou définit la longueur maximale en kilo-octets (1024 octets) des en-têtes de réponse.Gets or sets the maximum length, in kilobytes (1024 bytes), of the response headers. Par exemple, si la valeur est 64, 65 536 octets sont autorisés pour la longueur maximale des en-têtes de réponse.For example, if the value is 64, then 65536 bytes are allowed for the maximum response headers' length.

PreAuthenticate PreAuthenticate PreAuthenticate PreAuthenticate

Obtient ou définit une valeur indiquant si le gestionnaire envoie un en-tête d’autorisation avec la requête.Gets or sets a value that indicates whether the handler sends an Authorization header with the request.

Properties Properties Properties Properties

Obtient un dictionnaire accessible en écriture (autrement dit, un mappage) des propriétés personnalisées pour les demandes HttpClient.Gets a writable dictionary (that is, a map) of custom properties for the HttpClient requests. Le dictionnaire est initialisé vide ; vous pouvez insérer et interroger des paires clé-valeur pour vos gestionnaires personnalisés et un traitement spécial.The dictionary is initialized empty; you can insert and query key-value pairs for your custom handlers and special processing.

Proxy Proxy Proxy Proxy

Obtient ou définit les informations du proxy utilisées par le gestionnaire.Gets or sets proxy information used by the handler.

ServerCertificateCustomValidationCallback ServerCertificateCustomValidationCallback ServerCertificateCustomValidationCallback ServerCertificateCustomValidationCallback

Obtient ou définit une méthode de rappel pour valider le certificat de serveur.Gets or sets a callback method to validate the server certificate.

SslProtocols SslProtocols SslProtocols SslProtocols

Obtient ou définit le protocole TLS/SSL utilisé par les objets HttpClient gérés par l’objet HttpClientHandler.Gets or sets the TLS/SSL protocol used by the HttpClient objects managed by the HttpClientHandler object.

SupportsAutomaticDecompression SupportsAutomaticDecompression SupportsAutomaticDecompression SupportsAutomaticDecompression

Obtient une valeur qui indique si le gestionnaire prend en charge la décompression automatique du contenu de la réponse.Gets a value that indicates whether the handler supports automatic response content decompression.

SupportsProxy SupportsProxy SupportsProxy SupportsProxy

Obtient une valeur qui indique si le gestionnaire prend en charge les paramètres du proxy.Gets a value that indicates whether the handler supports proxy settings.

SupportsRedirectConfiguration SupportsRedirectConfiguration SupportsRedirectConfiguration SupportsRedirectConfiguration

Obtient une valeur qui indique si le gestionnaire prend en charge les paramètres de configuration des propriétés AllowAutoRedirect et MaxAutomaticRedirections.Gets a value that indicates whether the handler supports configuration settings for the AllowAutoRedirect and MaxAutomaticRedirections properties.

UseCookies UseCookies UseCookies UseCookies

Obtient ou définit une valeur qui indique si le gestionnaire utilise la propriété CookieContainer pour stocker des cookies de serveur, et utilise ces cookies lors de l’envoi des requêtes.Gets or sets a value that indicates whether the handler uses the CookieContainer property to store server cookies and uses these cookies when sending requests.

UseDefaultCredentials UseDefaultCredentials UseDefaultCredentials UseDefaultCredentials

Obtient ou définit une valeur qui contrôle si les informations d’identification par défaut sont envoyées avec les requêtes par le gestionnaire.Gets or sets a value that controls whether default credentials are sent with requests by the handler.

UseProxy UseProxy UseProxy UseProxy

Obtient ou définit une valeur qui indique si le gestionnaire utilise un proxy pour les requêtes.Gets or sets a value that indicates whether the handler uses a proxy for requests.

Méthodes

Dispose() Dispose() Dispose() Dispose()

Libère les ressources non managées et supprime les ressources managées utilisées par le HttpMessageHandler.Releases the unmanaged resources and disposes of the managed resources used by the HttpMessageHandler.

(Inherited from HttpMessageHandler)
Dispose(Boolean) Dispose(Boolean) Dispose(Boolean) Dispose(Boolean)

Libère les ressources non managées utilisées par le HttpClientHandler et supprime éventuellement les ressources managées.Releases the unmanaged resources used by the HttpClientHandler and optionally disposes of the managed resources.

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Détermine si l'objet spécifié est identique à l'objet actuel.Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Fait office de fonction de hachage par défaut.Serves as the default hash function.

(Inherited from Object)
GetType() GetType() GetType() GetType()

Obtient le Type de l'instance actuelle.Gets the Type of the current instance.

(Inherited from Object)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

Crée une copie superficielle du Object actuel.Creates a shallow copy of the current Object.

(Inherited from Object)
SendAsync(HttpRequestMessage, CancellationToken) SendAsync(HttpRequestMessage, CancellationToken) SendAsync(HttpRequestMessage, CancellationToken) SendAsync(HttpRequestMessage, CancellationToken)

Crée une instance de HttpResponseMessage selon les informations fournies dans le HttpRequestMessage en tant qu’opération qui ne se bloque pas.Creates an instance of HttpResponseMessage based on the information provided in the HttpRequestMessage as an operation that will not block.

ToString() ToString() ToString() ToString()

Retourne une chaîne qui représente l'objet actuel.Returns a string that represents the current object.

(Inherited from Object)

S’applique à

Voir aussi