HttpClient.SendAsync Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Envoyez une requête HTTP en tant qu’opération asynchrone.
Surcharges
| Nom | Description |
|---|---|
| SendAsync(HttpRequestMessage, HttpCompletionOption, CancellationToken) |
Envoyez une requête HTTP en tant qu’opération asynchrone. |
| SendAsync(HttpRequestMessage) |
Envoyez une requête HTTP en tant qu’opération asynchrone. |
| SendAsync(HttpRequestMessage, HttpCompletionOption) |
Envoyez une requête HTTP en tant qu’opération asynchrone. |
| SendAsync(HttpRequestMessage, CancellationToken) |
Envoyez une requête HTTP en tant qu’opération asynchrone. |
Remarques
Cette opération ne bloque pas.
SendAsync(HttpRequestMessage, HttpCompletionOption, CancellationToken)
Envoyez une requête HTTP en tant qu’opération asynchrone.
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)
Paramètres
- request
- HttpRequestMessage
Message de requête HTTP à envoyer.
- completionOption
- HttpCompletionOption
Une fois l’opération terminée (dès qu’une réponse est disponible ou après la lecture de l’ensemble du contenu de la réponse).
- cancellationToken
- CancellationToken
Jeton d’annulation pour annuler l’opération.
Retours
Objet de tâche représentant l’opération asynchrone.
Exceptions
request a la valeur null.
Le message de demande a déjà été envoyé par l’instance HttpClient .
La requête a échoué en raison d’un problème d’obtention d’une réponse HTTP valide, telle que l’échec de connectivité réseau, l’échec DNS, l’erreur de validation du certificat de serveur ou la réponse du serveur non valide. Sur .NET 8 et versions ultérieures, la raison est indiquée par HttpRequestError
-ou-
.NET Framework uniquement : la requête a expiré.
Le jeton d’annulation a été annulé. Cette exception est stockée dans la tâche retournée.
-ou-
.NET Core et .NET 5 et versions ultérieures uniquement : la requête a échoué en raison du délai d’expiration.
Remarques
Cette opération ne bloque pas. En fonction de la completionOption valeur du paramètre, l’objet retourné Task<TResult> se termine dès qu’une réponse est disponible ou que la réponse entière, y compris le contenu, est lu.
Note
En cas de délai d’expiration, différentes exceptions sont levées sur différentes implémentations de .NET.
- HttpRequestException est levée sur toutes les versions .NET Framework applicables.
- OperationCanceledException sans exception interne est levée sur toutes les versions .NET Core applicables.
- OperationCanceledException qui imbrique un TimeoutException est levée sur .NET 5 et versions ultérieures.
Cette méthode stocke dans la tâche toutes les exceptions non-utilisation que l’équivalent synchrone de la méthode peut lever. Si une exception est stockée dans la tâche retournée, cette exception est levée lorsque la tâche est attendue. Les exceptions d’utilisation, telles que ArgumentException, sont toujours levées de façon synchrone. Pour les exceptions stockées, consultez les exceptions levées par Send(HttpRequestMessage, HttpCompletionOption).
S’applique à
SendAsync(HttpRequestMessage)
Envoyez une requête HTTP en tant qu’opération asynchrone.
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)
Paramètres
- request
- HttpRequestMessage
Message de requête HTTP à envoyer.
Retours
Objet de tâche représentant l’opération asynchrone.
Exceptions
request a la valeur null.
Le message de demande a déjà été envoyé par l’instance HttpClient .
La requête a échoué en raison d’un problème d’obtention d’une réponse HTTP valide, telle que l’échec de connectivité réseau, l’échec DNS, l’erreur de validation du certificat de serveur ou la réponse du serveur non valide. Sur .NET 8 et versions ultérieures, la raison est indiquée par HttpRequestError
-ou-
.NET Framework uniquement : la requête a expiré.
.NET Core et .NET 5 et versions ultérieures uniquement : la requête a échoué en raison du délai d’expiration.
Remarques
Cette opération ne bloque pas. L’objet retourné Task<TResult> se termine une fois la réponse entière, y compris le contenu lu. Le comportement est le même que s’il ResponseContentRead a été spécifié explicitement.
Note
En cas de délai d’expiration, différentes exceptions sont levées sur différentes implémentations de .NET.
- HttpRequestException est levée sur toutes les versions .NET Framework applicables.
- OperationCanceledException sans exception interne est levée sur toutes les versions .NET Core applicables.
- OperationCanceledException qui imbrique un TimeoutException est levée sur .NET 5 et versions ultérieures.
Cette méthode stocke dans la tâche toutes les exceptions non-utilisation que l’équivalent synchrone de la méthode peut lever. Si une exception est stockée dans la tâche retournée, cette exception est levée lorsque la tâche est attendue. Les exceptions d’utilisation, telles que ArgumentException, sont toujours levées de façon synchrone. Pour les exceptions stockées, consultez les exceptions levées par Send(HttpRequestMessage).
S’applique à
SendAsync(HttpRequestMessage, HttpCompletionOption)
Envoyez une requête HTTP en tant qu’opération asynchrone.
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)
Paramètres
- request
- HttpRequestMessage
Message de requête HTTP à envoyer.
- completionOption
- HttpCompletionOption
Une fois l’opération terminée (dès qu’une réponse est disponible ou après la lecture de l’ensemble du contenu de la réponse).
Retours
Objet de tâche représentant l’opération asynchrone.
Exceptions
request a la valeur null.
Le message de demande a déjà été envoyé par l’instance HttpClient .
La requête a échoué en raison d’un problème d’obtention d’une réponse HTTP valide, telle que l’échec de connectivité réseau, l’échec DNS, l’erreur de validation du certificat de serveur ou la réponse du serveur non valide. Sur .NET 8 et versions ultérieures, la raison est indiquée par HttpRequestError
-ou-
.NET Framework uniquement : la requête a expiré.
.NET Core et .NET 5 et versions ultérieures uniquement : la requête a échoué en raison du délai d’expiration.
Remarques
Cette opération ne bloque pas. En fonction de la completionOption valeur du paramètre, l’objet retourné Task<TResult> se termine dès qu’une réponse est disponible ou que la réponse entière, y compris le contenu, est lu.
Note
En cas de délai d’expiration, différentes exceptions sont levées sur différentes implémentations de .NET.
- HttpRequestException est levée sur toutes les versions .NET Framework applicables.
- OperationCanceledException sans exception interne est levée sur toutes les versions .NET Core applicables.
- OperationCanceledException qui imbrique un TimeoutException est levée sur .NET 5 et versions ultérieures.
Cette méthode stocke dans la tâche toutes les exceptions non-utilisation que l’équivalent synchrone de la méthode peut lever. Si une exception est stockée dans la tâche retournée, cette exception est levée lorsque la tâche est attendue. Les exceptions d’utilisation, telles que ArgumentException, sont toujours levées de façon synchrone. Pour les exceptions stockées, consultez les exceptions levées par Send(HttpRequestMessage, HttpCompletionOption).
S’applique à
SendAsync(HttpRequestMessage, CancellationToken)
Envoyez une requête HTTP en tant qu’opération asynchrone.
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)
Paramètres
- request
- HttpRequestMessage
Message de requête HTTP à envoyer.
- cancellationToken
- CancellationToken
Jeton d’annulation pour annuler l’opération.
Retours
Objet de tâche représentant l’opération asynchrone.
Exceptions
request a la valeur null.
Le message de demande a déjà été envoyé par l’instance HttpClient .
La requête a échoué en raison d’un problème d’obtention d’une réponse HTTP valide, telle que l’échec de connectivité réseau, l’échec DNS, l’erreur de validation du certificat de serveur ou la réponse du serveur non valide. Sur .NET 8 et versions ultérieures, la raison est indiquée par HttpRequestError
-ou-
.NET Framework uniquement : la requête a expiré.
Le jeton d’annulation a été annulé. Cette exception est stockée dans la tâche retournée.
-ou-
.NET Core et .NET 5 et versions ultérieures uniquement : la requête a échoué en raison du délai d’expiration.
Remarques
Cette opération ne bloque pas. L’objet retourné Task<TResult> se termine une fois la réponse entière, y compris le contenu lu. Le comportement est le même que s’il ResponseContentRead a été spécifié explicitement.
Note
En cas de délai d’expiration, différentes exceptions sont levées sur différentes implémentations de .NET.
- HttpRequestException est levée sur toutes les versions .NET Framework applicables.
- OperationCanceledException sans exception interne est levée sur toutes les versions .NET Core applicables.
- OperationCanceledException qui imbrique un TimeoutException est levée sur .NET 5 et versions ultérieures.
Cette méthode stocke dans la tâche toutes les exceptions non-utilisation que l’équivalent synchrone de la méthode peut lever. Si une exception est stockée dans la tâche retournée, cette exception est levée lorsque la tâche est attendue. Les exceptions d’utilisation, telles que ArgumentException, sont toujours levées de façon synchrone. Pour les exceptions stockées, consultez les exceptions levées par Send(HttpRequestMessage).