好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

C#使用GET、POST请求获取结果

C#使用GET、POST请求获取结果,这里以一个简单的用户登陆为例。

1、 使用GET请求获取结果

1.1 创建LoginHandler.aspx处理页面

?

protected void Page_Load( object sender, EventArgs e)

{

   string result = "" ;

   string userName = Request.QueryString[ "UserName" ];

   string password = Request.QueryString[ "Password" ];

 

   if (userName == "admin" && password == "123" )

   {

     result = "登陆成功" ;

   }

   else

   {

     result = "登陆失败" ;

   }

   Response.Write(result);

}

1.2 编写GET请求与获取结果方法

?

/// <summary>

/// GET请求与获取结果

/// </summary>

public static string HttpGet( string Url, string postDataStr)

{

   HttpWebRequest request = (HttpWebRequest)WebRequest.Create(Url + (postDataStr == "" ? "" : "?" ) + postDataStr);

   request.Method = "GET" ;

   request.ContentType = "text/html;charset=UTF-8" ;

 

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

   Stream myResponseStream = response.GetResponseStream();

   StreamReader myStreamReader = new StreamReader(myResponseStream, Encoding.UTF8);

   string retString = myStreamReader.ReadToEnd();

   myStreamReader.Close();

   myResponseStream.Close();

 

   return retString;

}

1.3 调用测试

?

static void Main( string [] args)

{

   string url = "http://HdhCmsTestmystudy.cn/LoginHandler.aspx" ;

   string data = "UserName=admin&Password=123" ;

   string result = HttpGet(url, data);

   Console.WriteLine(result);

   Console.ReadLine();

}

2、 使用POST请求获取结果

2.1 创建LoginHandler.aspx处理页面

?

protected void Page_Load( object sender, EventArgs e)

{

   string result = "" ;

   string userName = Request.Form[ "UserName" ];

   string password = Request.Form[ "Password" ];

 

   if (userName == "admin" && password == "123" )

   {

     result = "登陆成功" ;

   }

   else

   {

     result = "登陆失败" ;

   }

   Response.Write(result);

}

2.2 编写POST请求与获取结果方法

?

/// <summary>

/// POST请求与获取结果

/// </summary>

public static string HttpPost( string Url, string postDataStr)

{

   HttpWebRequest request = (HttpWebRequest)WebRequest.Create(Url);

   request.Method = "POST" ;

   request.ContentType = "application/x-www-form-urlencoded" ;

   request.ContentLength = postDataStr.Length;

   StreamWriter writer = new StreamWriter(request.GetRequestStream(),Encoding.ASCII);

   writer.Write(postDataStr);

   writer.Flush();

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

   string encoding = response.ContentEncoding;

   if (encoding == null || encoding.Length < 1) {

     encoding = "UTF-8" ; //默认编码

   }

   StreamReader reader = new StreamReader(response.GetResponseStream(), Encoding.GetEncoding(encoding));

   string retString = reader.ReadToEnd();

   return retString;

}

2.3 调用测试

?

static void Main( string [] args)

{

   string url = "http://HdhCmsTestmystudy.cn/LoginHandler.aspx" ;

   string data = "UserName=admin&Password=123" ;

   string result = HttpPost(url, data);

   Console.WriteLine(result);

   Console.ReadLine();

}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。

dy("nrwz");

查看更多关于C#使用GET、POST请求获取结果的详细内容...

  阅读:49次