HttpClient.SendAsync Metodo

Definizione

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.

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.

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.

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.

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