HttpClient.SendRequestAsync 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.
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
- HttpRequestMessage
- PostAsync(Uri, IHttpContent)
- PutAsync(Uri, IHttpContent)
- SendRequestAsync(HttpRequestMessage, HttpCompletionOption)
- HttpClient
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.