您的位置:首页 > 编程语言 > C#

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

2016-06-02 17:21 477 查看


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

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

1、 使用GET请求获取结果

1.1 创建LoginHandler.aspx处理页面

[csharp] view
plain copy

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请求与获取结果方法

[csharp] view
plain copy

/// <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 调用测试

[csharp] view
plain copy

static void Main(string[] args)  

{  

    string url = "http://www.mystudy.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处理页面

[csharp] view
plain copy

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请求与获取结果方法

[csharp] view
plain copy

/// <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 调用测试

[csharp] view
plain copy

static void Main(string[] args)  

{  

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

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

    string result = HttpPost(url, data);  

    Console.WriteLine(result);  

    Console.ReadLine();  

}  

转载:http://blog.csdn.net/pan_junbiao/article/details/9155497
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: