Rumah >pembangunan bahagian belakang >C++ >Bagaimana cara menghantar permintaan pos http dengan data badan dalam .net?

Bagaimana cara menghantar permintaan pos http dengan data badan dalam .net?

Patricia Arquette
Patricia Arquetteasal
2025-02-02 16:26:09242semak imbas

.NET menghantar penjelasan terperinci mengenai kaedah permintaan pos HTTP yang mengandungi data teks

Artikel ini memperkenalkan beberapa kaedah untuk menghantar permintaan pos HTTP dan lulus data teks.

How to Send HTTP POST Requests with Body Data in .NET?

<.> 1. HttpClient (disyorkan)

Untuk. Ia menyediakan operasi yang tidak segerak dan tinggi.

<.> 2. Perpustakaan pihak ketiga
<code class="language-csharp">using System.Net.Http;
var client = new HttpClient();
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);</code>

RestSharp:

flurl.http:

<code class="language-csharp">using RestSharp;
var client = new RestClient("http://example.com");
var request = new RestRequest("resource/{id}");
request.AddParameter("thing1", "Hello");
request.AddParameter("thing2", "world");
var response = client.Post(request);</code>

<.> 3. HttpWebRequest (tidak disyorkan untuk projek baru)

post:
<code class="language-csharp">using Flurl.Http;
var responseString = await "http://www.example.com/recepticle.aspx"
    .PostUrlEncodedAsync(new { thing1 = "hello", thing2 = "world" })
    .ReceiveString();</code>

GET:

<.> 4. WebClient (tidak disyorkan untuk projek baru)

post:
<code class="language-csharp">using System.Net;
using System.Text;
var request = (HttpWebRequest)WebRequest.Create("http://www.example.com/recepticle.aspx");
var postData = "thing1=" + Uri.EscapeDataString("hello");
postData += "&thing2=" + Uri.EscapeDataString("world");
var data = Encoding.ASCII.GetBytes(postData);
using (var stream = request.GetRequestStream()) { stream.Write(data, 0, data.Length); }
var response = request.GetResponse();</code>

GET:

<code class="language-csharp">var request = (HttpWebRequest)WebRequest.Create("http://www.example.com/recepticle.aspx");
var response = request.GetResponse();</code>
Artikel ini membandingkan pelbagai .NET untuk menghantar permintaan pos HTTP, dan disyorkan untuk menggunakan HTTPClient. Untuk projek -projek baru, sangat disyorkan untuk menggunakan HTTPClient, kerana ia lebih moden, lebih prestasi, dan menyokong operasi tak segerak.

Atas ialah kandungan terperinci Bagaimana cara menghantar permintaan pos http dengan data badan dalam .net?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn