C#使用GET、POST請求獲取結果

C#使用GET、POST請求獲取結果,這裏以一個簡單的用戶登錄爲例。html

一、 使用GET請求獲取結果app

1.1 建立LoginHandler.aspx處理頁面post

 

[csharp]  view plain  copy
 
  1. protected void Page_Load(object sender, EventArgs e)  
  2. {  
  3.     string result = "";  
  4.     string userName = Request.QueryString["UserName"];  
  5.     string password = Request.QueryString["Password"];  
  6.   
  7.     if (userName == "admin" && password == "123")  
  8.     {  
  9.         result = "登錄成功";  
  10.     }  
  11.     else  
  12.     {  
  13.         result = "登錄失敗";  
  14.     }  
  15.     Response.Write(result);  
  16. }  

 

1.2 編寫GET請求與獲取結果方法測試

 

[csharp]  view plain  copy
 
  1. /// <summary>  
  2. /// GET請求與獲取結果  
  3. /// </summary>  
  4. public static string HttpGet(string Url, string postDataStr)  
  5. {  
  6.     HttpWebRequest request = (HttpWebRequest)WebRequest.Create(Url + (postDataStr == "" ? "" : "?") + postDataStr);  
  7.     request.Method = "GET";  
  8.     request.ContentType = "text/html;charset=UTF-8";  
  9.   
  10.     HttpWebResponse response = (HttpWebResponse)request.GetResponse();  
  11.     Stream myResponseStream = response.GetResponseStream();  
  12.     StreamReader myStreamReader = new StreamReader(myResponseStream, Encoding.UTF8);  
  13.     string retString = myStreamReader.ReadToEnd();  
  14.     myStreamReader.Close();  
  15.     myResponseStream.Close();  
  16.   
  17.     return retString;  
  18. }  

 

1.3 調用測試編碼

 

[csharp]  view plain  copy
 
  1. static void Main(string[] args)  
  2. {  
  3.     string url = "http://www.mystudy.cn/LoginHandler.aspx";  
  4.     string data = "UserName=admin&Password=123";  
  5.     string result = HttpGet(url, data);  
  6.     Console.WriteLine(result);  
  7.     Console.ReadLine();  
  8. }  

 

二、 使用POST請求獲取結果url

2.1 建立LoginHandler.aspx處理頁面spa

 

[csharp]  view plain  copy
 
  1. protected void Page_Load(object sender, EventArgs e)  
  2. {  
  3.     string result = "";  
  4.     string userName = Request.Form["UserName"];  
  5.     string password = Request.Form["Password"];  
  6.   
  7.     if (userName == "admin" && password == "123")  
  8.     {  
  9.         result = "登錄成功";  
  10.     }  
  11.     else  
  12.     {  
  13.         result = "登錄失敗";  
  14.     }  
  15.     Response.Write(result);  
  16. }  

 

2.2 編寫POST請求與獲取結果方法.net

 

[csharp]  view plain  copy
 
  1. /// <summary>  
  2. /// POST請求與獲取結果  
  3. /// </summary>  
  4. public static string HttpPost(string Url, string postDataStr)  
  5. {  
  6.     HttpWebRequest request = (HttpWebRequest)WebRequest.Create(Url);  
  7.     request.Method = "POST";  
  8.     request.ContentType = "application/x-www-form-urlencoded";  
  9.     request.ContentLength = postDataStr.Length;  
  10.     StreamWriter writer = new StreamWriter(request.GetRequestStream(),Encoding.ASCII);  
  11.     writer.Write(postDataStr);  
  12.     writer.Flush();  
  13.     HttpWebResponse response = (HttpWebResponse)request.GetResponse();  
  14.     string encoding = response.ContentEncoding;  
  15.     if (encoding == null || encoding.Length < 1) {  
  16.         encoding = "UTF-8"; //默認編碼  
  17.     }  
  18.     StreamReader reader = new StreamReader(response.GetResponseStream(), Encoding.GetEncoding(encoding));  
  19.     string retString = reader.ReadToEnd();  
  20.     return retString;  
  21. }  

 

2.3 調用測試code

 

[csharp]  view plain  copy
 
  1. static void Main(string[] args)  
  2. {  
  3.     string url = "http://www.mystudy.cn/LoginHandler.aspx";  
  4.     string data = "UserName=admin&Password=123";  
  5.     string result = HttpPost(url, data);  
  6.     Console.WriteLine(result);  
  7.     Console.ReadLine();  
  8. }  
相關文章
相關標籤/搜索