• Thiết kế website bán hàng miễn phí 2018

Hướng dẫn dùng GET and POST requests date trong asp.net

There are several ways to perform GET and POST requests: 


Method 1: Legacy

using System.Net;

POST

var request = (HttpWebRequest)WebRequest.Create("http://www.example.com/recepticle.aspx"); var postData = "thing1=hello"; postData += "&thing2=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();

GET

var request = (HttpWebRequest)WebRequest.Create("http://www.example.com/recepticle.aspx"); var response = (HttpWebResponse)request.GetResponse(); var responseString = new StreamReader(response.GetResponseStream()).ReadToEnd();

Method 2: WebClient (Also now legacy)

using System.Net; using System.Collections.Specialized;

POST

using (var client = new WebClient()) { var values = new NameValueCollection(); values["thing1"] = "hello"; values["thing2"] = "world"; var response = client.UploadValues("http://www.example.com/recepticle.aspx", values); var responseString = Encoding.Default.GetString(response); }

GET

using (var client = new WebClient()) { var responseString = client.DownloadString("http://www.example.com/recepticle.aspx"); }

Method 3: HttpClient

Currently the preferred approach. Asynchronous. Ships with .NET 4.5; portable version for other platforms available via NuGet.

using System.Net.Http;

POST

using (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); var responseString = await response.Content.ReadAsStringAsync(); }

GET

using (var client = new HttpClient()) { var responseString = client.GetStringAsync("http://www.example.com/recepticle.aspx"); }

Method 4: 3rd-Party Libraries

RestSharp

Tried and tested library for interacting with REST APIs. Portable. Available via NuGet.

Flurl.Http

Newer library sporting a fluent API and testing helpers. HttpClient under the hood. Portable. Available via NuGet.

using Flurl.Http;

POST

var responseString = await "http://www.example.com/recepticle.aspx" .PostUrlEncodedAsync(new { thing1 = "hello", thing2 = "world" }) .ReceiveString();

GET

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

Facebook Comments

Tin Cùng Chuyên Mục

Trang 1 / 1

Bạn đã đọc tin này chưa ?

Go Top