HttpClient.SendRequestAsync Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Sobrecargas
SendRequestAsync(HttpRequestMessage) |
Envie uma solicitação HTTP como uma operação assíncrona. Para obter diretrizes de programação para a classe HttpClient e exemplos de código, consulte o tópico conceitual HttpClient . |
SendRequestAsync(HttpRequestMessage, HttpCompletionOption) |
Envie uma solicitação HTTP com uma opção de conclusão HTTP como uma operação assíncrona. Para obter diretrizes de programação para a classe HttpClient e exemplos de código, consulte o tópico conceitual HttpClient . |
SendRequestAsync(HttpRequestMessage)
Envie uma solicitação HTTP como uma operação assíncrona. Para obter diretrizes de programação para a classe HttpClient e exemplos de código, consulte o tópico conceitual 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)
Parâmetros
- request
- HttpRequestMessage
A mensagem de solicitação HTTP a ser enviada.
Retornos
O objeto que representa a operação assíncrona.
- Atributos
Comentários
Essa operação não será bloqueada. O IAsyncOperationWithProgress retornado (de HttpResponseMessage e HttpProgress) é concluído após a leitura de toda a resposta (incluindo conteúdo).
O HttpRequestMessage passado no parâmetro de solicitação permite que o método SendRequestAsync defina cabeçalhos na mensagem de solicitação, bem como no conteúdo HTTP a ser enviado. Por outro lado, os métodos PostAsync e PutAsync permitem apenas definir um conjunto mais limitado de cabeçalhos de conteúdo HTTP.
Abaixo estão as exceções geradas por essa função.
E_ILLEGAL_METHOD_CALL
A mensagem de solicitação já foi enviada pela instância httpClient .
Tratamento de exceções
Você deve escrever código para lidar com exceções ao chamar esse método. Exceções podem resultar de erros de validação de parâmetro, falhas de resolução de nomes e erros de rede. Exceções de erros de rede (perda de conectividade, falhas de conexão e falhas de servidor HTTP, por exemplo) podem ocorrer a qualquer momento. Esses erros geram exceções. Se não for tratada pelo aplicativo, uma exceção poderá fazer com que todo o aplicativo seja encerrado pelo runtime. Para obter mais informações sobre como lidar com exceções, consulte Tratamento de exceções em aplicativos de rede e Como mapear HRESULTs e exceções.
Confira também
- HttpRequestMessage
- PostAsync(Uri, IHttpContent)
- PutAsync(Uri, IHttpContent)
- SendRequestAsync(HttpRequestMessage, HttpCompletionOption)
- HttpClient
Aplica-se a
SendRequestAsync(HttpRequestMessage, HttpCompletionOption)
Envie uma solicitação HTTP com uma opção de conclusão HTTP como uma operação assíncrona. Para obter diretrizes de programação para a classe HttpClient e exemplos de código, consulte o tópico conceitual 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)
Parâmetros
- request
- HttpRequestMessage
A mensagem de solicitação HTTP a ser enviada.
- completionOption
- HttpCompletionOption
Um valor que indica se a operação HttpClient é considerada concluída quando toda a resposta é lida ou quando apenas os cabeçalhos são lidos.
Retornos
O objeto que representa a operação assíncrona.
- Atributos
Comentários
Essa operação não será bloqueada. O IAsyncOperationWithProgress retornado (de HttpResponseMessage e HttpProgress) é concluído dependendo do valor do parâmetro completionOption .
O HttpRequestMessage passado no parâmetro de solicitação permite que o método SendRequestAsync defina cabeçalhos na mensagem de solicitação, bem como no conteúdo HTTP a ser enviado. Por outro lado, os métodos PostAsync e PutAsync permitem apenas definir um conjunto mais limitado de cabeçalhos de conteúdo HTTP.
Abaixo estão as exceções geradas por essa função.
E_ILLEGAL_METHOD_CALL
A mensagem de solicitação já foi enviada pela instância httpClient .
Tratamento de exceções
Você deve escrever código para lidar com exceções ao chamar esse método. Exceções podem resultar de erros de validação de parâmetro, falhas de resolução de nomes e erros de rede. Exceções de erros de rede (perda de conectividade, falhas de conexão e falhas de servidor HTTP, por exemplo) podem ocorrer a qualquer momento. Esses erros geram exceções. Se não for tratada pelo aplicativo, uma exceção poderá fazer com que todo o aplicativo seja encerrado pelo runtime. Para obter mais informações sobre como lidar com exceções, consulte Tratamento de exceções em aplicativos de rede e Como mapear HRESULTs e exceções.