HttpClient.SendAsync 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.
Enviar uma solicitação HTTP como uma operação assíncrona.
Sobrecargas
| Nome | Description |
|---|---|
| SendAsync(HttpRequestMessage, HttpCompletionOption, CancellationToken) |
Enviar uma solicitação HTTP como uma operação assíncrona. |
| SendAsync(HttpRequestMessage) |
Enviar uma solicitação HTTP como uma operação assíncrona. |
| SendAsync(HttpRequestMessage, HttpCompletionOption) |
Enviar uma solicitação HTTP como uma operação assíncrona. |
| SendAsync(HttpRequestMessage, CancellationToken) |
Enviar uma solicitação HTTP como uma operação assíncrona. |
Comentários
Essa operação não é bloqueada.
SendAsync(HttpRequestMessage, HttpCompletionOption, CancellationToken)
Enviar uma solicitação HTTP como uma operação assíncrona.
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)
Parâmetros
- request
- HttpRequestMessage
A mensagem de solicitação HTTP a ser enviada.
- completionOption
- HttpCompletionOption
Quando a operação deve ser concluída (assim que uma resposta estiver disponível ou depois de ler todo o conteúdo da resposta).
- cancellationToken
- CancellationToken
O token de cancelamento para cancelar a operação.
Retornos
O objeto de tarefa que representa a operação assíncrona.
Exceções
O request é null.
A mensagem de solicitação já foi enviada pela HttpClient instância.
A solicitação falhou devido a um problema ao obter uma resposta HTTP válida, como falha de conectividade de rede, falha de DNS, erro de validação de certificado do servidor ou resposta inválida do servidor. Em versões .NET 8 e posteriores, o motivo é indicado por HttpRequestError
-ou-
somente .NET Framework: a solicitação atingiu o tempo limite.
O token de cancelamento foi cancelado. Essa exceção é armazenada na tarefa retornada.
-ou-
.NET Core e .NET 5 e posterior somente: a solicitação falhou devido ao tempo limite.
Comentários
Essa operação não é bloqueada. Dependendo do valor do completionOption parâmetro, o objeto retornado Task<TResult> será concluído assim que uma resposta estiver disponível ou toda a resposta, incluindo o conteúdo, for lida.
Note
Em caso de tempo limite, exceções diferentes são geradas em diferentes implementações de .NET.
- HttpRequestException é lançada em todas as versões do .NET Framework aplicáveis.
- OperationCanceledException sem nenhuma exceção interna é lançada em todas as versões do .NET Core aplicáveis.
- OperationCanceledException que aninha um TimeoutException é lançado em versões .NET 5 e posteriores.
Esse método armazena na tarefa que retorna todas as exceções de não uso que o equivalente síncrono do método pode gerar. Se uma exceção for armazenada na tarefa retornada, essa exceção será gerada quando a tarefa for aguardada. Exceções de uso, como ArgumentException, ainda são geradas de forma síncrona. Para as exceções armazenadas, consulte as exceções geradas por Send(HttpRequestMessage, HttpCompletionOption).
Aplica-se a
SendAsync(HttpRequestMessage)
Enviar uma solicitação HTTP como uma operação assíncrona.
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)
Parâmetros
- request
- HttpRequestMessage
A mensagem de solicitação HTTP a ser enviada.
Retornos
O objeto de tarefa que representa a operação assíncrona.
Exceções
O request é null.
A mensagem de solicitação já foi enviada pela HttpClient instância.
A solicitação falhou devido a um problema ao obter uma resposta HTTP válida, como falha de conectividade de rede, falha de DNS, erro de validação de certificado do servidor ou resposta inválida do servidor. Em versões .NET 8 e posteriores, o motivo é indicado por HttpRequestError
-ou-
somente .NET Framework: a solicitação atingiu o tempo limite.
.NET Core e .NET 5 e posterior somente: a solicitação falhou devido ao tempo limite.
Comentários
Essa operação não é bloqueada. O objeto retornado Task<TResult> será concluído quando toda a resposta, incluindo conteúdo, for lida. O comportamento é o mesmo que se ResponseContentRead foi especificado explicitamente.
Note
Em caso de tempo limite, exceções diferentes são geradas em diferentes implementações de .NET.
- HttpRequestException é lançada em todas as versões do .NET Framework aplicáveis.
- OperationCanceledException sem nenhuma exceção interna é lançada em todas as versões do .NET Core aplicáveis.
- OperationCanceledException que aninha um TimeoutException é lançado em versões .NET 5 e posteriores.
Esse método armazena na tarefa que retorna todas as exceções de não uso que o equivalente síncrono do método pode gerar. Se uma exceção for armazenada na tarefa retornada, essa exceção será gerada quando a tarefa for aguardada. Exceções de uso, como ArgumentException, ainda são geradas de forma síncrona. Para as exceções armazenadas, consulte as exceções geradas por Send(HttpRequestMessage).
Aplica-se a
SendAsync(HttpRequestMessage, HttpCompletionOption)
Enviar uma solicitação HTTP como uma operação assíncrona.
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)
Parâmetros
- request
- HttpRequestMessage
A mensagem de solicitação HTTP a ser enviada.
- completionOption
- HttpCompletionOption
Quando a operação deve ser concluída (assim que uma resposta estiver disponível ou depois de ler todo o conteúdo da resposta).
Retornos
O objeto de tarefa que representa a operação assíncrona.
Exceções
O request é null.
A mensagem de solicitação já foi enviada pela HttpClient instância.
A solicitação falhou devido a um problema ao obter uma resposta HTTP válida, como falha de conectividade de rede, falha de DNS, erro de validação de certificado do servidor ou resposta inválida do servidor. Em versões .NET 8 e posteriores, o motivo é indicado por HttpRequestError
-ou-
somente .NET Framework: a solicitação atingiu o tempo limite.
.NET Core e .NET 5 e posterior somente: a solicitação falhou devido ao tempo limite.
Comentários
Essa operação não é bloqueada. Dependendo do valor do completionOption parâmetro, o objeto retornado Task<TResult> será concluído assim que uma resposta estiver disponível ou toda a resposta, incluindo o conteúdo, for lida.
Note
Em caso de tempo limite, exceções diferentes são geradas em diferentes implementações de .NET.
- HttpRequestException é lançada em todas as versões do .NET Framework aplicáveis.
- OperationCanceledException sem nenhuma exceção interna é lançada em todas as versões do .NET Core aplicáveis.
- OperationCanceledException que aninha um TimeoutException é lançado em versões .NET 5 e posteriores.
Esse método armazena na tarefa que retorna todas as exceções de não uso que o equivalente síncrono do método pode gerar. Se uma exceção for armazenada na tarefa retornada, essa exceção será gerada quando a tarefa for aguardada. Exceções de uso, como ArgumentException, ainda são geradas de forma síncrona. Para as exceções armazenadas, consulte as exceções geradas por Send(HttpRequestMessage, HttpCompletionOption).
Aplica-se a
SendAsync(HttpRequestMessage, CancellationToken)
Enviar uma solicitação HTTP como uma operação assíncrona.
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)
Parâmetros
- request
- HttpRequestMessage
A mensagem de solicitação HTTP a ser enviada.
- cancellationToken
- CancellationToken
O token de cancelamento para cancelar a operação.
Retornos
O objeto de tarefa que representa a operação assíncrona.
Exceções
O request é null.
A mensagem de solicitação já foi enviada pela HttpClient instância.
A solicitação falhou devido a um problema ao obter uma resposta HTTP válida, como falha de conectividade de rede, falha de DNS, erro de validação de certificado do servidor ou resposta inválida do servidor. Em versões .NET 8 e posteriores, o motivo é indicado por HttpRequestError
-ou-
somente .NET Framework: a solicitação atingiu o tempo limite.
O token de cancelamento foi cancelado. Essa exceção é armazenada na tarefa retornada.
-ou-
.NET Core e .NET 5 e posterior somente: a solicitação falhou devido ao tempo limite.
Comentários
Essa operação não é bloqueada. O objeto retornado Task<TResult> será concluído quando toda a resposta, incluindo conteúdo, for lida. O comportamento é o mesmo que se ResponseContentRead foi especificado explicitamente.
Note
Em caso de tempo limite, exceções diferentes são geradas em diferentes implementações de .NET.
- HttpRequestException é lançada em todas as versões do .NET Framework aplicáveis.
- OperationCanceledException sem nenhuma exceção interna é lançada em todas as versões do .NET Core aplicáveis.
- OperationCanceledException que aninha um TimeoutException é lançado em versões .NET 5 e posteriores.
Esse método armazena na tarefa que retorna todas as exceções de não uso que o equivalente síncrono do método pode gerar. Se uma exceção for armazenada na tarefa retornada, essa exceção será gerada quando a tarefa for aguardada. Exceções de uso, como ArgumentException, ainda são geradas de forma síncrona. Para as exceções armazenadas, consulte as exceções geradas por Send(HttpRequestMessage).