HttpWebRequest的GET和POST方法

2021-05-30 00:03

阅读:426

标签:XML   控制   nta   public   The   prot   time   创建   weather   

命名空间: System.Net,这是.NET创建者最初开发用于使用HTTP请求的标准类。使用HttpWebRequest可以让开发者控制请求/响应流程的各个方面,如 timeouts, cookies, headers, protocols。

GET请求就很简单易懂啦,如果需要传参,在URL末尾加上“?+参数名=参数值”即可,需要注意的是POST请求。

POST请求参数类型有多个,设置不正确会发生错误的,一般第三方接口都是以JSON交换数据,请求中的参数设置涉及到了Stream流的一些知识点

1
httpWebRequest.GetRequestStream().Write(bs, 0, bs.Length);

这一行的意思是将“bs”从Request的“0”位置中开始写入,长度为“bs.Length”,说白了就是把参数数据加入到请求数据中。

string url = "http://www.webxml.com.cn/WebServices/WeatherWS.asmx/";
            string postMethod = "getSupportCityDataset";//方法名
            string postDataName = "theRegionCode";//参数名
            string postDataValue = "3118";//参数值
            string recstr= HttpGet(url,postMethod,postDataName,postDataValue);

public string HttpGet(string Url, string postMethod,string postDataName, string postDataValue)
        {
            if (postMethod.Length>0)
            {
                Url += postMethod;
            }
            if (postDataName.Length>0)
            {
                Url += "?" + postDataName;
            }
            if (postDataValue.Length>0)
            {
                Url += "=" + postDataValue;
            }
            HttpWebRequest request = (HttpWebRequest)WebRequest.Create(Url);
            request.Method = "GET";
            request.ContentType = "text/html;charset=UTF-8";
            request.Timeout = 10000;

            HttpWebResponse response = (HttpWebResponse)request.GetResponse();
            Stream myResponseStream = response.GetResponseStream();
            StreamReader myStreamReader = new StreamReader(myResponseStream, Encoding.GetEncoding("utf-8"));
            string retString = myStreamReader.ReadToEnd();
            myStreamReader.Close();
            myResponseStream.Close();
            return retString;
        }

 

HttpWebRequest的GET和POST方法

标签:XML   控制   nta   public   The   prot   time   创建   weather   

原文地址:https://www.cnblogs.com/zhengxia/p/14698545.html


评论


亲,登录后才可以留言!