Http请求方法封装

  • POST请求

      public static string HttpPost(string url, string data)
            {
                string address = url;
                HttpWebRequest request = (HttpWebRequest)WebRequest.Create(address);
    
                request.Method = "POST";
                request.ContentType = "application/json";
                string strContent = data; //json字符串
                using (StreamWriter dataStream = new StreamWriter(request.GetRequestStream()))
                {
                    dataStream.Write(strContent);
                    dataStream.Close();
                }
                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();
    
                //解析josn
                //JObject jo = JObject.Parse(retString);
                return retString;
            }
    
    
  • GET请求

      //[WebMethod]
            public static string HttpGet(string url)
            {
                //预备请求的资源
                HttpWebRequest request = null;
                HttpWebResponse response = null;
                StreamReader reader = null;
    
                string content = string.Empty;
                //实例化一个http请求
                request = (HttpWebRequest)WebRequest.Create(url);
                //设置请求头 请求方式method=get
                request.Method = "GET";
                //使request。getResponse()返回的一个响应对象
                response = (HttpWebResponse)request.GetResponse();
                //reader 读取响应流
                using (reader = new StreamReader(response.GetResponseStream()))
                {
                    //意思是从头读到尾,全部读完
                    content = reader.ReadToEnd();
                }
    
                return content;
            }
    
posted @   码农阿亮  阅读(181)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
点击右上角即可分享
微信分享提示