zoukankan      html  css  js  c++  java
  • C# http请求数据

    httpgetpost请求的最大区别:get是通过URL传递表单值,post传递的表单值是隐藏到 http报文体中

    httpget方式请求数据

            /// <summary>
            /// get请求
            /// </summary>
            /// <param name="url">地址</param>
            /// <returns></returns>
            public string HttpGetRequest(string url)
            {
                //创建请求
                HttpWebRequest request =
                    WebRequest.Create(url) as
                        HttpWebRequest;
                string json = "";
    
                //得到请求的返回数据
                using (HttpWebResponse response = (HttpWebResponse)request.GetResponse())
                {
                    if (response.StatusCode == HttpStatusCode.OK) //表示返回的状态吗是200,请求成功
                    {
                        //得到返回的数据流,进行读取
                        using (Stream streamResonse = response.GetResponseStream())
                        using (StreamReader reader = new StreamReader(streamResonse))
                        {
    
                            json = reader.ReadToEnd();
                        }
                    }
                }
    
                return json;
            }

    httppost方式请求数据

     /// <summary>
            /// post请求
            /// </summary>
            /// <param name="url">地址</param>
            /// <param name="parameters">数据参数</param>
            /// <returns></returns>
            public string HttpPostRequest(string url, IDictionary<string, object> parameters)
            {
                //创建请求
                HttpWebRequest request = WebRequest.Create(url) as HttpWebRequest;
    
                request.ProtocolVersion = HttpVersion.Version10;
                request.Method = "POST";
                request.ContentType = "application/x-www-form-urlencoded";
    
    
                //序列化--参数传递使用json传递
                string jsonRes = JsonConvert.SerializeObject(parameters);
    
                //发送请求数据
                byte[] data = Encoding.Default.GetBytes(jsonRes);
                using (Stream stream = request.GetRequestStream())
                {
                    stream.Write(data, 0, data.Length);
                }
    
                string json = "";
                using (HttpWebResponse response = (HttpWebResponse)request.GetResponse())
                {
                    if (response.StatusCode == HttpStatusCode.OK) //200
                    {
                        using (Stream streamResonse = response.GetResponseStream())
                        using (StreamReader reader = new StreamReader(streamResonse))
                        {
    
                            json = reader.ReadToEnd();
                        }
                    }
                }
    
                return json;
            }
  • 相关阅读:
    Leetcode 1489找到最小生成树李关键边和伪关键边
    Leetcode 113 路径总和 II
    hdu 1223 还是畅通工程
    hdu 1087 Super Jumping! Jumping! Jumping!
    hdu 1008 Elevator
    hdu 1037 Keep on Truckin'
    湖工oj 1241 畅通工程
    湖工oj 1162 大武汉局域网
    hdu 2057 A + B Again
    poj 2236 Wireless Network
  • 原文地址:https://www.cnblogs.com/zxking/p/6195018.html
Copyright © 2011-2022 走看看