.
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
<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>
RestSharp adalah perpustakaan permintaan HTTP ketiga yang popular yang menyediakan API yang mudah dan mudah untuk menggunakan fungsi API dan kaya.
<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>
flurl.http adalah perpustakaan yang lebih baru, dengan API yang lancar dan mudah alih.
Kaedah 3: httpwebrequestditinggalkan
<code class="language-csharp">// POST 请求 var responseString = await "http://www.example.com/recepticle.aspx" .PostUrlEncodedAsync(new { thing1 = "hello", thing2 = "world" }) .ReceiveString();</code>
adalah kaedah yang lebih lama.
Kaedah 4: WebClient
ditinggalkan HttpWebRequest
HttpClient
<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>
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!