Maison > développement back-end > C++ > Comment envoyer des demandes de post HTTP dans .NET en utilisant différentes méthodes?

Comment envoyer des demandes de post HTTP dans .NET en utilisant différentes méthodes?

Patricia Arquette
Libérer: 2025-02-02 16:36:12
original
876 Les gens l'ont consulté

How to Send HTTP POST Requests in .NET Using Different Methods?

.net Envoyer la demande de post http

Introduction

Dans .NET, les développeurs ont demandé HTTP Post d'envoyer des données au serveur. Ces données peuvent utiliser une variété de formats, tels que des données JSON, XML ou URL de formulaire. Cet article va bien en vue de la façon d'émettre une demande HTTP Post dans le .NET pour explorer différentes méthodes et fournir des exemples de code.

Méthode 1: Utilisez httpclient (recommandation) **

httpclient est une méthode de recommandation pour les demandes HTTP dans .NET, avec des performances élevées. Il est disponible dans la plupart des versions .NET modernes et a fourni des opérations asynchrones.

Paramètres:

Demande de poste:

<code>private static readonly HttpClient client = new HttpClient();</code>
Copier après la connexion

Obtenez la demande:

<code>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();</code>
Copier après la connexion

Méthode 2: la bibliothèque tierce Restacte:

<code>var responseString = await client.GetStringAsync("http://www.example.com/recepticle.aspx");</code>
Copier après la connexion

flurl.http:

Méthode 3: httpwebRequest (non recommandé) **
<code>var request = new RestRequest("resource/{id}");
request.AddParameter("thing1", "Hello");
request.AddParameter("thing2", "world");
var response = client.Post(request);
var content = response.Content; // 原始内容作为字符串</code>
Copier après la connexion

httpwebRequest est une méthode plus ancienne, et les performances ne sont pas aussi bonnes que HttpClient. Pour des raisons de compatibilité, il est toujours pris en charge. Demande de poste:

<code>var responseString = await "http://www.example.com/recepticle.aspx"
    .PostUrlEncodedAsync(new { thing1 = "hello", thing2 = "world" })
    .ReceiveString();</code>
Copier après la connexion

Méthode 4: WebClient (non recommandé) **

WebClient est un autre choix, mais l'efficacité n'est pas aussi efficace que HttpClient.

Demande de poste:

<code>string postData = "thing1=" + Uri.EscapeDataString("hello");
postData += "&thing2=" + Uri.EscapeDataString("world");
var data = Encoding.ASCII.GetBytes(postData);

request.Method = "POST";
request.ContentType = "application/x-www-form-urlencoded";

using (var stream = request.GetRequestStream())
{
    stream.Write(data, 0, data.Length);
}</code>
Copier après la connexion

Conclusion

.NET Send http Les demandes de poste peuvent utiliser plusieurs méthodes. HttpClient est la méthode préférée, et la bibliothèque de troisième partie fournit d'autres fonctions. Pour des raisons de compatibilité, HttpWeBRequest et WebClient peuvent toujours être utilisés, mais il est recommandé d'utiliser des méthodes modernes pour obtenir des performances et des fonctions optimales.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal