C# Http请求封装(简易版)

C# 2014次浏览 本站
using System;
using System.IO;
using System.Net;
using System.Text;

namespace RC.Framework.Helper
{
    public class HttpHelper
    {
        public static string HttpGet(string url, string data)
        {
            var request = (HttpWebRequest)WebRequest.Create(url + (data == "" ? "" : "?") + data);
            request.Method = "GET";
            request.ContentType = "text/html;";
            using (var response = (HttpWebResponse)request.GetResponse())
            {
                var stream = response.GetResponseStream();
                string s = null;
                if (stream != null)
                {
                    using (var reader = new StreamReader(stream, Encoding.UTF8))
                    {
                        s = reader.ReadToEnd();
                        reader.Close();
                    }
                    stream.Close();
                }
                return s;
            }
        }

        public static string HttpPost(string url, string data)
        {
            try
            {
                var byteArray = Encoding.UTF8.GetBytes(data);
                var request = (HttpWebRequest)WebRequest.Create(new Uri(url));
                request.Method = "post";
                request.ContentType = "application/x-www-form-urlencoded";
                request.ContentLength = byteArray.Length;
                request.Timeout = 5 * 60 * 1000;
                using (var stream = request.GetRequestStream())
                {
                    stream.Write(byteArray, 0, byteArray.Length);
                    stream.Close();
                }
                string res;
                using (var response = (HttpWebResponse)request.GetResponse())
                {
                    res = new StreamReader(response.GetResponseStream(), Encoding.Default).ReadToEnd();
                }
                return res;
            }
            catch (Exception ex)
            {
                return ex.Message + ex.StackTrace;
            }
        }
    }
}
            

发表评论

电子邮件地址不会被公开。 必填项已用*标注