Envoyer des requêtes POST avec HttpClient dans .NET Core
Le package HttpClient de .NET Core est un outil puissant pour effectuer des requêtes HTTP vers des API web. Dans cet article, nous allons explorer un exemple concret d'envoi d'une requête POST à l'aide de HttpClient.
Configuration de l'environnement
Avant de commencer, assurez-vous que vous avez installé le package System.Net.Http
dans votre projet .NET Core. Vous pouvez le faire en utilisant le gestionnaire de paquets NuGet.
Exemple de requête POST
using System.Net.Http;
using System.Net.Http.Headers;
using System.Text;
using System.Threading.Tasks;
public class PostRequestExample
{
public async Task SendPostRequestAsync(string url, object data)
{
using var client = new HttpClient();
// Configuration des en-têtes
client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
// Serialisation des données en JSON
var json = Newtonsoft.Json.JsonConvert.SerializeObject(data);
var content = new StringContent(json, Encoding.UTF8, "application/json");
// Envoi de la requête POST
var response = await client.PostAsync(url, content);
// Vérification du code de statut de la réponse
if (response.IsSuccessStatusCode)
{
// Lecture de la réponse
var responseBody = await response.Content.ReadAsStringAsync();
return responseBody;
}
else
{
// Gestion des erreurs
return "Erreur lors de la requête POST";
}
}
}
Dans cet exemple, nous créons une nouvelle instance de HttpClient
. Nous configurons ensuite l'en-tête Accept
pour indiquer que nous attendons une réponse en format JSON.
Les données à envoyer sont ensuite sérialisées en JSON et transmises dans le corps de la requête via un objet StringContent
.
La méthode PostAsync
est utilisée pour envoyer la requête POST à l'URL spécifiée. La méthode IsSuccessStatusCode
vérifie si la requête a été traitée avec succès. Si c'est le cas, nous lisons la réponse et la renvoyons. Sinon, nous traitons l'erreur.
Conclusion
Cet exemple montre comment utiliser HttpClient
pour envoyer des requêtes POST dans .NET Core. N'oubliez pas de gérer les erreurs et de personnaliser vos requêtes en fonction de vos besoins.
Mots-clés: HttpClient, .NET Core, Requête POST, API Web, JSON