HttpClient.GetStringAsync 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 GET à l’URI spécifié et retournez le corps de la réponse sous forme de chaîne dans une opération asynchrone.
Surcharges
| Nom | Description |
|---|---|
| GetStringAsync(String) |
Envoyez une requête GET à l’URI spécifié et retournez le corps de la réponse sous forme de chaîne dans une opération asynchrone. |
| GetStringAsync(Uri) |
Envoyez une requête GET à l’URI spécifié et retournez le corps de la réponse sous forme de chaîne dans une opération asynchrone. |
Remarques
Cette opération ne bloque pas.
GetStringAsync(String)
Envoyez une requête GET à l’URI spécifié et retournez le corps de la réponse sous forme de chaîne dans une opération asynchrone.
public:
System::Threading::Tasks::Task<System::String ^> ^ GetStringAsync(System::String ^ requestUri);
public System.Threading.Tasks.Task<string> GetStringAsync(string requestUri);
member this.GetStringAsync : string -> System.Threading.Tasks.Task<string>
Public Function GetStringAsync (requestUri As String) As Task(Of String)
Paramètres
- requestUri
- String
URI auquel la requête est envoyée.
Retours
Objet de tâche représentant l’opération asynchrone.
Exceptions
Ce requestUri n’est pas un URI absolu et BaseAddress n’est pas défini.
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-
Le code d’état de la réponse était en dehors de la plage de 200-299 (ce qui indique la réussite en fonction de la norme).
-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.
L’URI de la demande fourni n’est pas valide par rapport ou PAR URI absolu.
Remarques
Cette opération ne bloque pas. L’objet retourné Task<TResult> se termine une fois que l’ensemble du corps de la réponse est lu.
En interne, cette opération permet HttpResponseMessage.EnsureSuccessStatusCode de s’assurer que le code d’état de la réponse se trouve dans la plage de réussite (200-299) et lève une HttpRequestException valeur si ce n’est pas le cas.
Dans certains scénarios, vous devrez peut-être mieux contrôler les codes d’état considérés comme réussis ; par exemple, une API peut être censée toujours retourner 200 OK. Dans ce cas, nous vous recommandons de vérifier manuellement si StatusCode elle correspond à la valeur attendue.
Note
En cas de délai d’expiration :
- .NET Framework lève une HttpRequestException.
- .NET Core lève un OperationCanceledException sans exception interne.
- .NET 5 et versions ultérieures lèvent un OperationCanceledException qui imbrique un TimeoutException.
S’applique à
GetStringAsync(Uri)
Envoyez une requête GET à l’URI spécifié et retournez le corps de la réponse sous forme de chaîne dans une opération asynchrone.
public:
System::Threading::Tasks::Task<System::String ^> ^ GetStringAsync(Uri ^ requestUri);
public System.Threading.Tasks.Task<string> GetStringAsync(Uri requestUri);
member this.GetStringAsync : Uri -> System.Threading.Tasks.Task<string>
Public Function GetStringAsync (requestUri As Uri) As Task(Of String)
Paramètres
- requestUri
- Uri
URI auquel la requête est envoyée.
Retours
Objet de tâche représentant l’opération asynchrone.
Exceptions
Ce requestUri n’est pas un URI absolu et BaseAddress n’est pas défini.
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-
Le code d’état de la réponse était en dehors de la plage de 200-299 (ce qui indique la réussite en fonction de la norme).
-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 que l’ensemble du corps de la réponse est lu.
En interne, cette opération permet HttpResponseMessage.EnsureSuccessStatusCode de s’assurer que le code d’état de la réponse se trouve dans la plage de réussite (200-299) et lève une HttpRequestException valeur si ce n’est pas le cas.
Dans certains scénarios, vous devrez peut-être mieux contrôler les codes d’état considérés comme réussis ; par exemple, une API peut être censée toujours retourner 200 OK. Dans ce cas, nous vous recommandons de vérifier manuellement si StatusCode elle correspond à la valeur attendue.
Note
En cas de délai d’expiration :
- .NET Framework lève une HttpRequestException.
- .NET Core lève un OperationCanceledException sans exception interne.
- .NET 5 et versions ultérieures lèvent un OperationCanceledException qui imbrique un TimeoutException.