System.Net.Http Espace de noms
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Fournit une interface de programmation pour les applications HTTP modernes.
Classes
ByteArrayContent |
Fournit du contenu HTTP basé sur un tableau d'octets. |
DelegatingHandler |
Type pour les gestionnaires HTTP qui délèguent le traitement des messages de réponse HTTP à un autre gestionnaire, appelé le gestionnaire interne. |
FormUrlEncodedContent |
Conteneur pour les tuples nom/valeur encodés en utilisant le type MIME application/x-www-form-urlencoded. |
HttpClient |
Fournit une classe pour envoyer des requêtes HTTP et recevoir des réponses HTTP à partir d’une ressource identifiée par un URI. |
HttpClientFactoryExtensions |
Méthodes d’extension pour IHttpClientFactory. |
HttpClientHandler |
Gestionnaire de messages par défaut utilisé par HttpClient dans le .NET Framework et .NET Core 2.0 et antérieur. |
HttpContent |
Classe de base représentant un corps d'entité HTTP et des en-têtes de contenu. |
HttpDiagnosticsHttpRequestMessageExtensions |
Extensions pour les utilitaires de télémétrie. |
HttpIOException |
Exception levée lorsqu’une erreur se produit lors de la lecture de la réponse. |
HttpMessageHandler |
Type de base pour les gestionnaires de messages HTTP. |
HttpMessageHandlerFactoryExtensions |
Méthodes d’extension pour IHttpMessageHandlerFactory. |
HttpMessageInvoker |
Classe spécialisée qui permet aux applications d’appeler la méthode SendAsync(HttpRequestMessage, CancellationToken) sur une chaîne de gestionnaire HTTP. |
HttpMethod |
Classe d'assistance pour récupérer et comparer les méthodes HTTP standard et pour créer de nouvelles méthodes HTTP. |
HttpProtocolException |
Exception levée lorsqu’une erreur de protocole HTTP/2 ou HTTP/3 se produit. |
HttpRequestException |
Classe de base pour les exceptions levées par les classes HttpClient et HttpMessageHandler . |
HttpRequestMessage |
Représente un message de requête HTTP. |
HttpRequestOptions |
Représente une collection d’options pour une requête HTTP. |
HttpResilienceHttpRequestMessageExtensions |
Extensions de résilience pour HttpRequestMessage. |
HttpResponseMessage |
Représente un message de réponse HTTP avec le code et les données d'état. |
MessageProcessingHandler |
Type de base pour les gestionnaires qui n'exécutent qu'une petite partie du traitement des messages de requête et/ou de réponse. |
MultipartContent |
Fournit une collection d'objets HttpContent qui sont sérialisés à l'aide de la spécification de type de contenu multipart/*. |
MultipartFormDataContent |
Fournit un conteneur pour le contenu codé à l'aide du type MIME multipart/form-data. |
ReadOnlyMemoryContent |
Fournit du contenu HTTP basé sur un ReadOnlyMemory<T>. |
RtcRequestFactory |
Fournit une interface de programmation pour les applications HTTP modernes. |
SocketsHttpConnectionContext |
Représente le contexte passé à ConnectCallback pour une instance SocketsHttpHandler. . |
SocketsHttpHandler |
Fournit le Gestionnaire de messages par défaut utilisé par HttpClient dans .NET Core 2.1 et ultérieur. |
SocketsHttpPlaintextStreamFilterContext |
Représente le contexte passé à PlaintextStreamFilter pour un instance SocketsHttpHandler. |
StreamContent |
Fournit du contenu HTTP basé sur un flux. |
StringContent |
Fournit du contenu HTTP basé sur une chaîne. |
WebRequestHandler |
Fournit les fonctionnalités spécifiques au bureau non disponibles pour les applications Windows Store ou d'autres environnements. |
WinHttpHandler |
Gère les messages en fonction de l’interface WinHTTP de Windows. Cette classe est destinée à être utilisée dans les environnements serveur. |
Structures
HttpRequestOptionsKey<TValue> |
Représente une clé dans la collection d’options d’une requête HTTP. |
Interfaces
IHttpClientFactory |
Abstraction de fabrique pour un composant qui peut créer des instances HttpClient avec une configuration personnalisée pour un nom logique donné. |
IHttpMessageHandlerFactory |
Abstraction de fabrique pour un composant qui peut créer des instances HttpMessageHandler avec une configuration personnalisée pour un nom logique donné. |
Énumérations
ClientCertificateOption |
Spécifie la façon dont les certificats clients sont fournis. |
CookieUsePolicy |
Cette énumération permet de contrôler les cookies HTTP lors de communications avec le serveur. |
HttpCompletionOption |
Indique si les opérations HttpClient doivent être considérées comme étant terminées dès qu'une réponse est disponible, ou après avoir pris connaissance de l'intégralité du message de réponse intégrant le contenu. |
HttpKeepAlivePingPolicy |
Spécifie le moment où la trame Ping HTTP/2 est envoyée sur une connexion inactive. |
HttpRequestError |
Définit des catégories d’erreur représentant la raison de HttpRequestException ou HttpIOException. |
HttpVersionPolicy |
Spécifie les comportements de sélection et de négociation de la version HTTP d’une demande. |
WindowsProxyUsePolicy |
Cette énumération fournit les options disponibles pour les paramètres de proxy utilisés par un HttpClient lors de l’exécution sur Windows. |
Délégués
HeaderEncodingSelector<TContext> |
Représente une méthode qui spécifie l’encodage à utiliser lors de l’interprétation des valeurs d’en-tête. |
Remarques
L’espace System.Net.Http de noms est conçu pour fournir les éléments suivants :
Composants clients HTTP qui permettent aux utilisateurs de consommer des services web modernes via HTTP.
Composants HTTP qui peuvent être utilisés à la fois par les clients et les serveurs (en-têtes et messages HTTP, par exemple). Cela fournit un modèle de programmation cohérent côté client et côté serveur pour les services web modernes via HTTP.
L’espace System.Net.Http de noms et l’espace de noms associé System.Net.Http.Headers fournissent l’ensemble de composants suivant :
HttpClient - la classe primaire utilisée pour envoyer et recevoir des requêtes via HTTP.
HttpRequestMessage et HttpResponseMessage - messages HTTP tels que définis dans RFC 2616 par l’IETF.
HttpHeaders - En-têtes HTTP tels que définis dans la RFC 2616 par l’IETF.
HttpClientHandler - Gestionnaires HTTP responsables de la production de messages de réponse HTTP.
Il existe différents gestionnaires de messages HTTP qui peuvent être utilisés. Elles incluent les suivantes :
DelegatingHandler - Classe utilisée pour connecter un gestionnaire à une chaîne de gestionnaire.
HttpMessageHandler - Une classe simple à dériver de qui prend en charge les exigences les plus courantes pour la plupart des applications.
HttpClientHandler - Classe qui fonctionne au bas de la chaîne de gestionnaire qui gère en fait les opérations de transport HTTP.
WebRequestHandler - Classe spécialisée qui fonctionne en bas de la classe de chaîne de gestionnaire qui gère les opérations de transport HTTP avec des options spécifiques à l’objet System.Net.HttpWebRequest .
Le contenu d’un message HTTP correspond au corps d’entité défini dans RFC 2616.
Plusieurs classes peuvent être utilisées pour le contenu HTTP. Elles incluent les suivantes :
ByteArrayContent - Contenu HTTP basé sur un tableau d’octets.
FormUrlEncodedContent - Contenu HTTP des tuples nom/valeur encodé à l’aide du type MIME application/x-www-form-urlencoded.
MultipartContent - Contenu HTTP sérialisé à l’aide de la spécification de type de contenu multipart/*.
MultipartFormDataContent - Contenu HTTP encodé à l’aide du type MIME multipart/form-data.
StreamContent - Contenu HTTP basé sur un flux.
StringContent - Contenu HTTP basé sur une chaîne.
Si une application utilisant les espaces de noms et System.Net.Http.Headers a l’intention System.Net.Http de télécharger de grandes quantités de données (50 mégaoctets ou plus), l’application doit diffuser ces téléchargements en continu et ne pas utiliser la mise en mémoire tampon par défaut. Si la mise en mémoire tampon par défaut est utilisée, l’utilisation de la mémoire client sera très importante, ce qui peut entraîner une réduction sensible des performances.
Les classes des espaces de System.Net.Http noms et System.Net.Http.Headers peuvent être utilisées pour développer des applications du Windows Store ou des applications de bureau. Lorsqu’elles sont utilisées dans une application du Windows Store, les classes des espaces de noms et System.Net.Http.Headers sont affectées par la System.Net.Http fonctionnalité d’isolation réseau, qui fait partie du modèle de sécurité d’application utilisé par le Windows 8. Les fonctionnalités réseau appropriées doivent être activées dans le manifeste d’une application du Windows Store pour le système afin d’autoriser l’accès réseau par une application du Windows Store. Pour plus d’informations, consultez Isolement réseau pour les applications du Windows Store.