HttpClient.SendAsync Metodo
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.
Inviare una richiesta HTTP come operazione asincrona.
Overload
| Nome | Descrizione |
|---|---|
| SendAsync(HttpRequestMessage, HttpCompletionOption, CancellationToken) |
Inviare una richiesta HTTP come operazione asincrona. |
| SendAsync(HttpRequestMessage) |
Inviare una richiesta HTTP come operazione asincrona. |
| SendAsync(HttpRequestMessage, HttpCompletionOption) |
Inviare una richiesta HTTP come operazione asincrona. |
| SendAsync(HttpRequestMessage, CancellationToken) |
Inviare una richiesta HTTP come operazione asincrona. |
Commenti
Questa operazione non viene bloccata.
SendAsync(HttpRequestMessage, HttpCompletionOption, CancellationToken)
Inviare una richiesta HTTP come operazione asincrona.
public:
System::Threading::Tasks::Task<System::Net::Http::HttpResponseMessage ^> ^ SendAsync(System::Net::Http::HttpRequestMessage ^ request, System::Net::Http::HttpCompletionOption completionOption, System::Threading::CancellationToken cancellationToken);
public System.Threading.Tasks.Task<System.Net.Http.HttpResponseMessage> SendAsync(System.Net.Http.HttpRequestMessage request, System.Net.Http.HttpCompletionOption completionOption, System.Threading.CancellationToken cancellationToken);
override this.SendAsync : System.Net.Http.HttpRequestMessage * System.Net.Http.HttpCompletionOption * System.Threading.CancellationToken -> System.Threading.Tasks.Task<System.Net.Http.HttpResponseMessage>
Public Function SendAsync (request As HttpRequestMessage, completionOption As HttpCompletionOption, cancellationToken As CancellationToken) As Task(Of HttpResponseMessage)
Parametri
- request
- HttpRequestMessage
Messaggio di richiesta HTTP da inviare.
- completionOption
- HttpCompletionOption
Al termine dell'operazione (non appena è disponibile una risposta o dopo la lettura dell'intero contenuto della risposta).
- cancellationToken
- CancellationToken
Token di annullamento da annullare.
Valori restituiti
Oggetto attività che rappresenta l'operazione asincrona.
Eccezioni
Il request è null.
Il messaggio di richiesta è già stato inviato dall'istanza HttpClient di .
La richiesta non è riuscita a causa di un problema durante il recupero di una risposta HTTP valida, ad esempio un errore di connettività di rete, un errore DNS, un errore di convalida del certificato del server o una risposta del server non valida. In .NET 8 e versioni successive, il motivo è indicato da HttpRequestError
oppure
solo .NET Framework: timeout della richiesta.
Il token di annullamento è stato annullato. Questa eccezione viene archiviata nell'attività restituita.
oppure
.NET Core e .NET 5 e versioni successive: la richiesta non è riuscita a causa del timeout.
Commenti
Questa operazione non viene bloccata. A seconda del valore del completionOption parametro, l'oggetto restituito Task<TResult> verrà completato non appena è disponibile una risposta o l'intera risposta inclusa il contenuto viene letto.
Note
In caso di timeout, vengono generate eccezioni diverse in implementazioni di .NET diverse.
- HttpRequestException viene generata in tutte le versioni applicabili di .NET Framework.
- OperationCanceledException senza alcuna eccezione interna viene generata in tutte le versioni applicabili .NET Core.
- OperationCanceledException che annida un TimeoutException viene generato in .NET 5 e versioni successive.
Questo metodo archivia nell'attività che restituisce tutte le eccezioni non di utilizzo che la controparte sincrona del metodo può generare. Se un'eccezione viene archiviata nell'attività restituita, tale eccezione verrà generata quando l'attività è attesa. Le eccezioni di utilizzo, ad esempio ArgumentException, vengono comunque generate in modo sincrono. Per le eccezioni archiviate, vedere le eccezioni generate da Send(HttpRequestMessage, HttpCompletionOption).
Si applica a
SendAsync(HttpRequestMessage)
Inviare una richiesta HTTP come operazione asincrona.
public:
System::Threading::Tasks::Task<System::Net::Http::HttpResponseMessage ^> ^ SendAsync(System::Net::Http::HttpRequestMessage ^ request);
public System.Threading.Tasks.Task<System.Net.Http.HttpResponseMessage> SendAsync(System.Net.Http.HttpRequestMessage request);
override this.SendAsync : System.Net.Http.HttpRequestMessage -> System.Threading.Tasks.Task<System.Net.Http.HttpResponseMessage>
Public Function SendAsync (request As HttpRequestMessage) As Task(Of HttpResponseMessage)
Parametri
- request
- HttpRequestMessage
Messaggio di richiesta HTTP da inviare.
Valori restituiti
Oggetto attività che rappresenta l'operazione asincrona.
Eccezioni
Il request è null.
Il messaggio di richiesta è già stato inviato dall'istanza HttpClient di .
La richiesta non è riuscita a causa di un problema durante il recupero di una risposta HTTP valida, ad esempio un errore di connettività di rete, un errore DNS, un errore di convalida del certificato del server o una risposta del server non valida. In .NET 8 e versioni successive, il motivo è indicato da HttpRequestError
oppure
solo .NET Framework: timeout della richiesta.
.NET Core e .NET 5 e versioni successive: la richiesta non è riuscita a causa del timeout.
Commenti
Questa operazione non viene bloccata. L'oggetto restituito Task<TResult> verrà completato dopo la lettura dell'intera risposta, incluso il contenuto. Il comportamento è uguale a se ResponseContentRead è stato specificato in modo esplicito.
Note
In caso di timeout, vengono generate eccezioni diverse in implementazioni di .NET diverse.
- HttpRequestException viene generata in tutte le versioni applicabili di .NET Framework.
- OperationCanceledException senza alcuna eccezione interna viene generata in tutte le versioni applicabili .NET Core.
- OperationCanceledException che annida un TimeoutException viene generato in .NET 5 e versioni successive.
Questo metodo archivia nell'attività che restituisce tutte le eccezioni non di utilizzo che la controparte sincrona del metodo può generare. Se un'eccezione viene archiviata nell'attività restituita, tale eccezione verrà generata quando l'attività è attesa. Le eccezioni di utilizzo, ad esempio ArgumentException, vengono comunque generate in modo sincrono. Per le eccezioni archiviate, vedere le eccezioni generate da Send(HttpRequestMessage).
Si applica a
SendAsync(HttpRequestMessage, HttpCompletionOption)
Inviare una richiesta HTTP come operazione asincrona.
public:
System::Threading::Tasks::Task<System::Net::Http::HttpResponseMessage ^> ^ SendAsync(System::Net::Http::HttpRequestMessage ^ request, System::Net::Http::HttpCompletionOption completionOption);
public System.Threading.Tasks.Task<System.Net.Http.HttpResponseMessage> SendAsync(System.Net.Http.HttpRequestMessage request, System.Net.Http.HttpCompletionOption completionOption);
override this.SendAsync : System.Net.Http.HttpRequestMessage * System.Net.Http.HttpCompletionOption -> System.Threading.Tasks.Task<System.Net.Http.HttpResponseMessage>
Public Function SendAsync (request As HttpRequestMessage, completionOption As HttpCompletionOption) As Task(Of HttpResponseMessage)
Parametri
- request
- HttpRequestMessage
Messaggio di richiesta HTTP da inviare.
- completionOption
- HttpCompletionOption
Al termine dell'operazione (non appena è disponibile una risposta o dopo la lettura dell'intero contenuto della risposta).
Valori restituiti
Oggetto attività che rappresenta l'operazione asincrona.
Eccezioni
Il request è null.
Il messaggio di richiesta è già stato inviato dall'istanza HttpClient di .
La richiesta non è riuscita a causa di un problema durante il recupero di una risposta HTTP valida, ad esempio un errore di connettività di rete, un errore DNS, un errore di convalida del certificato del server o una risposta del server non valida. In .NET 8 e versioni successive, il motivo è indicato da HttpRequestError
oppure
solo .NET Framework: timeout della richiesta.
.NET Core e .NET 5 e versioni successive: la richiesta non è riuscita a causa del timeout.
Commenti
Questa operazione non viene bloccata. A seconda del valore del completionOption parametro, l'oggetto restituito Task<TResult> verrà completato non appena è disponibile una risposta o l'intera risposta inclusa il contenuto viene letto.
Note
In caso di timeout, vengono generate eccezioni diverse in implementazioni di .NET diverse.
- HttpRequestException viene generata in tutte le versioni applicabili di .NET Framework.
- OperationCanceledException senza alcuna eccezione interna viene generata in tutte le versioni applicabili .NET Core.
- OperationCanceledException che annida un TimeoutException viene generato in .NET 5 e versioni successive.
Questo metodo archivia nell'attività che restituisce tutte le eccezioni non di utilizzo che la controparte sincrona del metodo può generare. Se un'eccezione viene archiviata nell'attività restituita, tale eccezione verrà generata quando l'attività è attesa. Le eccezioni di utilizzo, ad esempio ArgumentException, vengono comunque generate in modo sincrono. Per le eccezioni archiviate, vedere le eccezioni generate da Send(HttpRequestMessage, HttpCompletionOption).
Si applica a
SendAsync(HttpRequestMessage, CancellationToken)
Inviare una richiesta HTTP come operazione asincrona.
public:
override System::Threading::Tasks::Task<System::Net::Http::HttpResponseMessage ^> ^ SendAsync(System::Net::Http::HttpRequestMessage ^ request, System::Threading::CancellationToken cancellationToken);
public override System.Threading.Tasks.Task<System.Net.Http.HttpResponseMessage> SendAsync(System.Net.Http.HttpRequestMessage request, System.Threading.CancellationToken cancellationToken);
override this.SendAsync : System.Net.Http.HttpRequestMessage * System.Threading.CancellationToken -> System.Threading.Tasks.Task<System.Net.Http.HttpResponseMessage>
Public Overrides Function SendAsync (request As HttpRequestMessage, cancellationToken As CancellationToken) As Task(Of HttpResponseMessage)
Parametri
- request
- HttpRequestMessage
Messaggio di richiesta HTTP da inviare.
- cancellationToken
- CancellationToken
Token di annullamento da annullare.
Valori restituiti
Oggetto attività che rappresenta l'operazione asincrona.
Eccezioni
Il request è null.
Il messaggio di richiesta è già stato inviato dall'istanza HttpClient di .
La richiesta non è riuscita a causa di un problema durante il recupero di una risposta HTTP valida, ad esempio un errore di connettività di rete, un errore DNS, un errore di convalida del certificato del server o una risposta del server non valida. In .NET 8 e versioni successive, il motivo è indicato da HttpRequestError
oppure
solo .NET Framework: timeout della richiesta.
Il token di annullamento è stato annullato. Questa eccezione viene archiviata nell'attività restituita.
oppure
.NET Core e .NET 5 e versioni successive: la richiesta non è riuscita a causa del timeout.
Commenti
Questa operazione non viene bloccata. L'oggetto restituito Task<TResult> verrà completato dopo la lettura dell'intera risposta, incluso il contenuto. Il comportamento è uguale a se ResponseContentRead è stato specificato in modo esplicito.
Note
In caso di timeout, vengono generate eccezioni diverse in implementazioni di .NET diverse.
- HttpRequestException viene generata in tutte le versioni applicabili di .NET Framework.
- OperationCanceledException senza alcuna eccezione interna viene generata in tutte le versioni applicabili .NET Core.
- OperationCanceledException che annida un TimeoutException viene generato in .NET 5 e versioni successive.
Questo metodo archivia nell'attività che restituisce tutte le eccezioni non di utilizzo che la controparte sincrona del metodo può generare. Se un'eccezione viene archiviata nell'attività restituita, tale eccezione verrà generata quando l'attività è attesa. Le eccezioni di utilizzo, ad esempio ArgumentException, vengono comunque generate in modo sincrono. Per le eccezioni archiviate, vedere le eccezioni generate da Send(HttpRequestMessage).