System.Net.Http Spazio dei nomi

Fornisce un'interfaccia di programmazione per le applicazioni HTTP moderne. Provides a programming interface for modern HTTP applications.

Classi

ByteArrayContent

Fornisce il contenuto HTTP basato su una matrice di byte.Provides HTTP content based on a byte array.

CFNetworkHandler
DelegatingHandler

Tipo per gestori HTTP che delegano l'elaborazione dei messaggi di risposta HTTP a un altro gestore, chiamato gestore interno.A type for HTTP handlers that delegate the processing of HTTP response messages to another handler, called the inner handler.

FormUrlEncodedContent

Contenitore per le tuple nome/valore codificate utilizzando il tipo MIME application/x-www-form-urlencoded.A container for name/value tuples encoded using application/x-www-form-urlencoded MIME type.

HttpClient

Fornisce una classe base per l'invio di richieste HTTP e la ricezione di risposte HTTP da una risorsa identificata da un URI.Provides a base class for sending HTTP requests and receiving HTTP responses from a resource identified by a URI.

HttpClientFactoryExtensions

Metodi di estensione per IHttpClientFactory.Extensions methods for IHttpClientFactory.

HttpClientHandler

Il gestore di messaggi predefinito usato da HttpClient.NET Framework e .NET Core 2.0 e versioni precedenti.The default message handler used by HttpClient in .NET Framework and .NET Core 2.0 and earlier.

HttpContent

Classe base che rappresenta un corpo di entità e intestazioni di contenuto HTTP.A base class representing an HTTP entity body and content headers.

HttpMessageHandler

Tipo di base per i gestori di messaggi HTTP.A base type for HTTP message handlers.

HttpMessageHandlerFactoryExtensions

Metodi di estensione per IHttpMessageHandlerFactory.Extensions methods for IHttpMessageHandlerFactory.

HttpMessageInvoker

Classe di specializzazione che consente alle applicazioni di chiamare il metodo SendAsync(HttpRequestMessage, CancellationToken) su una catena del gestore HTTP.A specialty class that allows applications to call the SendAsync(HttpRequestMessage, CancellationToken) method on an HTTP handler chain.

HttpMethod

Classe di helper per recuperare e confrontare i metodi HTTP standard e per creare nuovi metodi HTTP.A helper class for retrieving and comparing standard HTTP methods and for creating new HTTP methods.

HttpRequestException

Classe base per eccezioni generate dalle classi HttpClient e HttpMessageHandler.A base class for exceptions thrown by the HttpClient and HttpMessageHandler classes.

HttpRequestMessage

Rappresenta un messaggio di richiesta HTTP.Represents a HTTP request message.

HttpRequestOptions
HttpResponseMessage

Rappresenta un messaggio di risposta HTTP che include il codice di stato e i dati.Represents a HTTP response message including the status code and data.

MessageProcessingHandler

Tipo di base per i gestori che eseguono solo un'elaborazione limitata dei messaggi di richiesta e/o risposta.A base type for handlers which only do some small processing of request and/or response messages.

MultipartContent

Fornisce una raccolta di oggetti HttpContent che vengono serializzati utilizzando la specifica di tipo di contenuto multipart/*.Provides a collection of HttpContent objects that get serialized using the multipart/* content type specification.

MultipartFormDataContent

Fornisce un contenitore per il contenuto codificato usando il tipo MIME multipart/form-data.Provides a container for content encoded using multipart/form-data MIME type.

NSUrlSessionHandler

Gestore di messaggi predefinito usato da HttpClient sulle piattaforme Apple che usano lo stack Xamarin (iOS, MacOS, watchOS, tvOS)The default message handler used by HttpClient on Apple platforms using the Xamarin stack (iOS, macOS, watchOS, tvOS)

ReadOnlyMemoryContent

Fornisce contenuto HTTP in base a ReadOnlyMemory<T>.Provides HTTP content based on a ReadOnlyMemory<T>.

RtcRequestFactory
SocketsHttpConnectionContext

Rappresenta il contesto passato a ConnectCallback per un'istanza di SocketsHttpHandler.Represents the context passed to the ConnectCallback for a SocketsHttpHandler instance. ..

SocketsHttpHandler

Fornisce il gestore di messaggi predefinito usato da HttpClient in .NET Core 2.1 e versioni successive.Provides the default message handler used by HttpClient in .NET Core 2.1 and later.

SocketsHttpPlaintextStreamFilterContext
StreamContent

Fornisce il contenuto HTTP basato su un flusso.Provides HTTP content based on a stream.

StringContent

Fornisce il contenuto HTTP basato su una stringa.Provides HTTP content based on a string.

WebRequestHandler

Fornisce funzionalità specifiche del desktop non disponibili per le App Windows Store o altri ambienti.Provides desktop-specific features not available to Windows Store apps or other environments.

WinHttpHandler

Gestisce i messaggi basati sull'interfaccia WinHTTP di Windows.Handles messages based on the WinHTTP interface of Windows. Questa classe deve essere usata in ambienti server.This class is intended for use in server environments.

Struct

HttpRequestOptionsKey<TValue>

Interfacce

IHttpClientFactory

Astrazione della factory per un componente che può creare istanze di HttpClient con una configurazione personalizzata per un nome logico specificato.A factory abstraction for a component that can create HttpClient instances with custom configuration for a given logical name.

IHttpMessageHandlerFactory

Astrazione della factory per un componente che può creare istanze di HttpMessageHandler con una configurazione personalizzata per un nome logico specificato.A factory abstraction for a component that can create HttpMessageHandler instances with custom configuration for a given logical name.

Enumerazioni

ClientCertificateOption

Specifica come i certificati client vengono forniti.Specifies how client certificates are provided.

CookieUsePolicy

Questa enumerazione consente il controllo dei cookie HTTP durante la comunicazione con il server.This enumeration allows control of HTTP cookies when communicating with the server.

HttpCompletionOption

Indica se le operazioni di HttpClient devono essere considerate completate non appena la risposta è disponibile o dopo la lettura dell'intero messaggio di risposta, incluso il contenuto.Indicates if HttpClient operations should be considered completed either as soon as a response is available, or after reading the entire response message including the content.

HttpKeepAlivePingPolicy

Specifica quando il frame ping HTTP/2 viene inviato in una connessione inattiva.Specifies when the HTTP/2 ping frame is sent on an idle connection.

HttpVersionPolicy

Specifica i comportamenti per la selezione e la negoziazione della versione HTTP per una richiesta.Specifies behaviors for selecting and negotiating the HTTP version for a request.

WindowsProxyUsePolicy

Questa enumerazione fornisce le opzioni disponibili per le impostazioni proxy usate da un HttpClient durante l'esecuzione in Windows.This enumeration provides available options for the proxy settings used by an HttpClient when running on Windows.

Delegati

HeaderEncodingSelector<TContext>

Rappresenta un metodo che specifica la codifica da usare per l'interpretazione dei valori di intestazione.Represents a method that specifies the encoding to use when interpreting header values.

Commenti

Lo System.Net.Http spazio dei nomi è progettato per fornire gli elementi seguenti:The System.Net.Http namespace is designed to provide the following:

  1. Componenti client HTTP che consentono agli utenti di utilizzare i servizi Web moderni tramite HTTP.HTTP client components that allow users to consume modern web services over HTTP.

  2. Componenti HTTP che possono essere usati sia da client che da server (ad esempio, intestazioni HTTP e messaggi).HTTP components that can be used by both clients and servers (HTTP headers and messages, for example). Questo fornisce un modello di programmazione coerente sul lato client e sul lato server per i servizi Web moderni su HTTP.This provides a consistent programming model on both the client and the server side for modern web services over HTTP.

Lo System.Net.Http spazio dei nomi e lo System.Net.Http.Headers spazio dei nomi correlato forniscono il seguente set di componenti:The System.Net.Http namespace and the related System.Net.Http.Headers namespace provide the following set of components:

  1. HttpClient : classe primaria utilizzata per inviare e ricevere richieste tramite HTTP.HttpClient - the primary class used to send and receive requests over HTTP.

  2. HttpRequestMessage e HttpResponseMessage -messaggi HTTP come definito nella RFC 2616 da IETF.HttpRequestMessage and HttpResponseMessage - HTTP messages as defined in RFC 2616 by the IETF.

  3. HttpHeaders -Intestazioni HTTP come definito nella RFC 2616 da IETF.HttpHeaders - HTTP headers as defined in RFC 2616 by the IETF.

  4. HttpClientHandler -Gestori HTTP responsabili della creazione di messaggi di risposta HTTP.HttpClientHandler - HTTP handlers responsible for producing HTTP response messages.

Sono disponibili diversi gestori di messaggi HTTP che è possibile usare.There are various HTTP message handlers that can be used. Sono incluse le seguenti.These include the following.

  1. DelegatingHandler : Classe utilizzata per inserire un gestore in una catena di gestori.DelegatingHandler - A class used to plug a handler into a handler chain.

  2. HttpMessageHandler : Semplice classe da derivare da che supporta i requisiti più comuni per la maggior parte delle applicazioni.HttpMessageHandler - A simple to class to derive from that supports the most common requirements for most applications.

  3. HttpClientHandler : Classe che opera nella parte inferiore della catena di gestori che gestisce effettivamente le operazioni di trasporto HTTP.HttpClientHandler - A class that operates at the bottom of the handler chain that actually handles the HTTP transport operations.

  4. WebRequestHandler : Classe di specializzazione che opera alla fine della classe di catena del gestore che gestisce le operazioni di trasporto HTTP con opzioni specifiche dell' System.Net.HttpWebRequest oggetto.WebRequestHandler - A specialty class that operates at the bottom of the handler chain class that handles HTTP transport operations with options that are specific to the System.Net.HttpWebRequest object.

Il contenuto di un messaggio HTTP corrisponde al corpo dell'entità definito nella specifica RFC 2616.The contents of an HTTP message corresponds to the entity body defined in RFC 2616.

È possibile utilizzare un numero di classi per il contenuto HTTP.A number of classes can be used for HTTP content. Sono incluse le seguenti.These include the following.

  1. ByteArrayContent -Contenuto HTTP basato su una matrice di byte.ByteArrayContent - HTTP content based on a byte array.

  2. FormUrlEncodedContent -Contenuto HTTP delle tuple Nome/valore codificate tramite il tipo MIME application/x-www-form-urlencoded.FormUrlEncodedContent - HTTP content of name/value tuples encoded using application/x-www-form-urlencoded MIME type.

  3. MultipartContent -Contenuto HTTP che viene serializzato utilizzando la specifica del tipo di contenuto multipart/*.MultipartContent - HTTP content that gets serialized using the multipart/* content type specification.

  4. MultipartFormDataContent -Contenuto HTTP codificato usando il tipo MIME multipart/form-data.MultipartFormDataContent - HTTP content encoded using the multipart/form-data MIME type.

  5. StreamContent -Contenuto HTTP basato su un flusso.StreamContent - HTTP content based on a stream.

  6. StringContent -Contenuto HTTP basato su una stringa.StringContent - HTTP content based on a string.

Se un'app che usa System.Net.Http gli System.Net.Http.Headers spazi dei nomi e intende scaricare grandi quantità di dati (50 megabyte o più), l'app deve trasmettere tali download senza usare la memorizzazione nel buffer predefinita.If an app using the System.Net.Http and System.Net.Http.Headers namespaces intends to download large amounts of data (50 megabytes or more), then the app should stream those downloads and not use the default buffering. Se viene utilizzata la memorizzazione nel buffer predefinita, l'utilizzo della memoria del client otterrà dimensioni molto elevate, causando potenzialmente una riduzione sostanziale delle prestazioni.If the default buffering is used the client memory usage will get very large, potentially resulting in substantially reduced performance.

Le classi negli System.Net.Http System.Net.Http.Headers spazi dei nomi e possono essere usate per sviluppare app di Windows Store o applicazioni desktop.Classes in the System.Net.Http and System.Net.Http.Headers namespaces can be used to develop Windows Store apps or desktop apps. Quando viene usato in un'app di Windows Store, le classi negli System.Net.Http System.Net.Http.Headers spazi dei nomi e sono interessate dalla funzionalità di isolamento rete, parte del modello di sicurezza dell'applicazione usato da Windows 8Windows 8 .When used in a Windows Store app, classes in the System.Net.Http and System.Net.Http.Headers namespaces are affected by network isolation feature, part of the application security model used by the Windows 8Windows 8. Le funzionalità di rete appropriate devono essere abilitate nel manifesto dell'applicazione per un'app di Windows Store affinché il sistema consenta l'accesso alla rete da parte di un'app di Windows Store.The appropriate network capabilities must be enabled in the app manifest for a Windows Store app for the system to allow network access by a Windows store app. Per altre informazioni, vedere Network Isolation for Windows Store Apps (Isolamento rete per le app di Windows Store).For more information, see the Network Isolation for Windows Store Apps.

Vedi anche