Rumah > pembangunan bahagian belakang > C++ > Bagaimana cara menghantar permintaan pos http dalam .net menggunakan httpclient, restsharp, dan kaedah lain?

Bagaimana cara menghantar permintaan pos http dalam .net menggunakan httpclient, restsharp, dan kaedah lain?

Susan Sarandon
Lepaskan: 2025-02-02 16:31:10
asal
879 orang telah melayarinya

.

How to Send HTTP POST Requests in .NET Using HttpClient, RestSharp, and Other Methods?
Artikel ini akan menerangkan sepenuhnya cara menghantar permintaan pos HTTP di bawah Rangka Kerja .NET.

Kaedah yang disyorkan: httpclient

Dalam .NET, menggunakan kelas

adalah kaedah pilihan untuk menghantar permintaan HTTP. Ia menyediakan cara yang tidak segerak yang tinggi untuk menghantar permintaan dan menerima respons.

HttpClient

Kaedah 2: Perpustakaan pihak ketiga
<code class="language-csharp">// 初始化
private static readonly HttpClient client = new HttpClient();

// 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();</code>
Salin selepas log masuk

RestSharp

RestSharp adalah perpustakaan permintaan HTTP ketiga yang popular yang menyediakan API yang mudah dan mudah untuk menggunakan fungsi API dan kaya.

flurl.http

<code class="language-csharp">// POST 请求
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);
var content = response.Content; // 原始字符串内容</code>
Salin selepas log masuk

flurl.http adalah perpustakaan yang lebih baru, dengan API yang lancar dan mudah alih.

Kaedah 3: httpwebrequest

ditinggalkan
<code class="language-csharp">// POST 请求
var responseString = await "http://www.example.com/recepticle.aspx"
    .PostUrlEncodedAsync(new { thing1 = "hello", thing2 = "world" })
    .ReceiveString();</code>
Salin selepas log masuk

adalah kaedah yang lebih lama.

Kaedah 4: WebClient

ditinggalkan HttpWebRequest HttpClient

adalah peranti pembungkusan
<code class="language-csharp">// POST 请求
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);

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

using (var stream = request.GetRequestStream())
{
    stream.Write(data, 0, data.Length);
}

var response = (HttpWebResponse)request.GetResponse();

var responseString = new StreamReader(response.GetResponseStream()).ReadToEnd();</code>
Salin selepas log masuk
, yang biasanya tidak disyorkan untuk projek baru.

Atas ialah kandungan terperinci Bagaimana cara menghantar permintaan pos http dalam .net menggunakan httpclient, restsharp, dan kaedah lain?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan