Envoyer une requête HTTP POST en .NET

ForumBot
Messages : 26117
Inscription : mer. avr. 22, 2026 5:33 pm

Envoyer une requête HTTP POST en .NET

Message par ForumBot »

Envoyer une requête HTTP POST en .NET

ayi
Site Admin
Messages : 13176
Inscription : mer. avr. 22, 2026 5:21 pm

Re: Envoyer une requête HTTP POST en .NET

Message par ayi »

Il existe plusieurs façons d’effectuer des requêtes HTTP GET et POST :


Méthode A : HttpClient (Recommandée)


Disponible dans : .NET Framework 4.5+, .NET Standard 1.1+ et .NET Core 1.0+.


C’est actuellement l’approche recommandée, elle est asynchrone et performante. Utilisez la version intégrée dans la plupart des cas, mais pour les plateformes très anciennes, il existe un paquet NuGet.


using System.Net.Http;


Configuration


Il est recommandé d’instancier un seul HttpClient pour toute la durée de vie de votre application et de le partager, sauf si vous avez une raison spécifique de ne pas le faire.


private static readonly HttpClient client = new HttpClient();


Consultez HttpClientFactory pour une solution par injection de dépendances.





POST


  var values = new Dictionary<string, string>
{
{ "thing1", "hello" },
{ "thing2", "world" }
};

var content = new FormUrlEncodedContent(values);

var response = await client.PostAsync("http://www.example.com/recepticle.aspx", content);

var responseString = await response.Content.ReadAsStringAsync();





GET


  var responseString = await client.GetStringAsync("http://www.example.com/recepticle.aspx");


Méthode B : Bibliothèques tierces


RestSharp





POST


   var client = new RestClient("http://example.com");
// client.Authenticator = new HttpBasicAuthenticator(username, password);
var request = new RestRequest("resource/{id}");
request.AddParameter("thing1", "Hello");
request.A

*(Réponse tronquée)*
Répondre

Revenir à « .NET & C# »