Condividi tramite


HttpClient.SendRequestAsync Metodo

Definizione

Overload

SendRequestAsync(HttpRequestMessage)

Inviare una richiesta HTTP come operazione asincrona. Per indicazioni sulla programmazione per la classe HttpClient ed esempi di codice, vedere l'argomento concettuale HttpClient .

SendRequestAsync(HttpRequestMessage, HttpCompletionOption)

Inviare una richiesta HTTP con un'opzione di completamento HTTP come operazione asincrona. Per indicazioni sulla programmazione per la classe HttpClient ed esempi di codice, vedere l'argomento concettuale HttpClient .

SendRequestAsync(HttpRequestMessage)

Inviare una richiesta HTTP come operazione asincrona. Per indicazioni sulla programmazione per la classe HttpClient ed esempi di codice, vedere l'argomento concettuale HttpClient .

public:
 virtual IAsyncOperationWithProgress<HttpResponseMessage ^, HttpProgress> ^ SendRequestAsync(HttpRequestMessage ^ request) = SendRequestAsync;
/// [Windows.Foundation.Metadata.Overload("SendRequestAsync")]
/// [Windows.Foundation.Metadata.RemoteAsync]
IAsyncOperationWithProgress<HttpResponseMessage, HttpProgress> SendRequestAsync(HttpRequestMessage const& request);
[Windows.Foundation.Metadata.Overload("SendRequestAsync")]
[Windows.Foundation.Metadata.RemoteAsync]
public IAsyncOperationWithProgress<HttpResponseMessage,HttpProgress> SendRequestAsync(HttpRequestMessage request);
function sendRequestAsync(request)
Public Function SendRequestAsync (request As HttpRequestMessage) As IAsyncOperationWithProgress(Of HttpResponseMessage, HttpProgress)

Parametri

request
HttpRequestMessage

Messaggio di richiesta HTTP da inviare.

Restituisce

Oggetto che rappresenta l'operazione asincrona.

Attributi

Commenti

Questa operazione non verrà bloccata. L'oggetto IAsyncOperationWithProgress restituito (di HttpResponseMessage e HttpProgress) viene completato dopo la lettura dell'intera risposta (incluso il contenuto).

HttpRequestMessage passato nel parametro request consente al metodo SendRequestAsync di impostare le intestazioni nel messaggio di richiesta e sul contenuto HTTP da inviare. Al contrario, i metodi PostAsync e PutAsync consentono solo di impostare un set più limitato di intestazioni di contenuto HTTP.

Di seguito sono riportate le eccezioni generate da questa funzione.

E_ILLEGAL_METHOD_CALL

Il messaggio di richiesta è già stato inviato dall'istanza HttpClient .

Gestione delle eccezioni

È necessario scrivere codice per gestire le eccezioni quando si chiama questo metodo. Le eccezioni possono derivare da errori di convalida dei parametri, errori di risoluzione dei nomi ed errori di rete. Le eccezioni da errori di rete (perdita di connettività, errori di connessione e errori del server HTTP, ad esempio) possono verificarsi in qualsiasi momento. Questi errori causano la generazione di eccezioni. Se non viene gestita dall'app, un'eccezione può causare la terminazione dell'intera app da parte del runtime. Per altre informazioni su come gestire le eccezioni, vedere Gestione delle eccezioni nelle app di rete e Procedura: Eseguire il mapping di HRESULT ed eccezioni.

Vedi anche

Si applica a

SendRequestAsync(HttpRequestMessage, HttpCompletionOption)

Inviare una richiesta HTTP con un'opzione di completamento HTTP come operazione asincrona. Per indicazioni sulla programmazione per la classe HttpClient ed esempi di codice, vedere l'argomento concettuale HttpClient .

public:
 virtual IAsyncOperationWithProgress<HttpResponseMessage ^, HttpProgress> ^ SendRequestAsync(HttpRequestMessage ^ request, HttpCompletionOption completionOption) = SendRequestAsync;
/// [Windows.Foundation.Metadata.Overload("SendRequestWithOptionAsync")]
/// [Windows.Foundation.Metadata.RemoteAsync]
IAsyncOperationWithProgress<HttpResponseMessage, HttpProgress> SendRequestAsync(HttpRequestMessage const& request, HttpCompletionOption const& completionOption);
[Windows.Foundation.Metadata.Overload("SendRequestWithOptionAsync")]
[Windows.Foundation.Metadata.RemoteAsync]
public IAsyncOperationWithProgress<HttpResponseMessage,HttpProgress> SendRequestAsync(HttpRequestMessage request, HttpCompletionOption completionOption);
function sendRequestAsync(request, completionOption)
Public Function SendRequestAsync (request As HttpRequestMessage, completionOption As HttpCompletionOption) As IAsyncOperationWithProgress(Of HttpResponseMessage, HttpProgress)

Parametri

request
HttpRequestMessage

Messaggio di richiesta HTTP da inviare.

completionOption
HttpCompletionOption

Valore che indica se l'operazione HttpClient viene considerata completata quando tutte le risposte vengono lette o quando vengono lette solo le intestazioni.

Restituisce

Oggetto che rappresenta l'operazione asincrona.

Attributi

Commenti

Questa operazione non verrà bloccata. L'oggetto IAsyncOperationWithProgress restituito (di HttpResponseMessage e HttpProgress) viene completato a seconda del valore del parametro completionOption.

HttpRequestMessage passato nel parametro request consente al metodo SendRequestAsync di impostare le intestazioni nel messaggio di richiesta e sul contenuto HTTP da inviare. Al contrario, i metodi PostAsync e PutAsync consentono solo di impostare un set più limitato di intestazioni di contenuto HTTP.

Di seguito sono riportate le eccezioni generate da questa funzione.

E_ILLEGAL_METHOD_CALL

Il messaggio di richiesta è già stato inviato dall'istanza HttpClient .

Gestione delle eccezioni

È necessario scrivere codice per gestire le eccezioni quando si chiama questo metodo. Le eccezioni possono derivare da errori di convalida dei parametri, errori di risoluzione dei nomi ed errori di rete. Le eccezioni da errori di rete (perdita di connettività, errori di connessione e errori del server HTTP, ad esempio) possono verificarsi in qualsiasi momento. Questi errori causano la generazione di eccezioni. Se non viene gestita dall'app, un'eccezione può causare la terminazione dell'intera app da parte del runtime. Per altre informazioni su come gestire le eccezioni, vedere Gestione delle eccezioni nelle app di rete e Procedura: Eseguire il mapping di HRESULT ed eccezioni.

Vedi anche

Si applica a