zoukankan      html  css  js  c++  java
  • C#使用GET、POST请求获取结果

    转自:http://blog.csdn.net/pan_junbiao/article/details/9155497

    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://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处理页面

    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://www.mystudy.cn/LoginHandler.aspx";
        string data = "UserName=admin&Password=123";
        string result = HttpPost(url, data);
        Console.WriteLine(result);
        Console.ReadLine();
    }
  • 相关阅读:
    位置边框深度探索QT窗口系统几何篇2
    下载图片封装一个工具类,搞定图片批量下载
    svn判断通过svnkit,获取最新的revision以及判断某个revsion是否存在
    java路径Java开发中获得非Web项目的当前项目路径
    遍历文件Java中遍历出指定目录中的所有文件
    存储过程程序存储过程编程5
    工具设置Unity3D系列教程使用免费工具在Unity3D中开发2D游戏 第一节
    破解学习Asprise OCR v4.0 64位破解...仅供学习使用
    宽度拉伸9patch图的尺寸尽量为偶数
    nullnull用宏定义swap(x,y)
  • 原文地址:https://www.cnblogs.com/gavin-num1/p/4798661.html
Copyright © 2011-2022 走看看