HTTP请求的GET和POST请求

GET请求,通用方法封装,代码如下:

        /// <summary>
        /// Get方法
        /// </summary>
        /// <param name="url">请求地址</param>
        /// <param name="param">参数</param>
        /// <param name="token">认证Token</param>
        /// <returns></returns>
        private string Get(string url, string param, String token)
        {
            if (!String.IsNullOrWhiteSpace(param))
            {
                url = String.Format("{0}?{1}", url, param);
            }
            HttpWebRequest request = WebRequest.Create(url) as HttpWebRequest;

            request.Method = "GET";
            request.ContentType = "application/x-www-form-urlencoded";

            //写入认证Token
            if (!String.IsNullOrWhiteSpace(token))
                request.Headers.Add("X-Auth-Token", token);

            //开始请求
            using (HttpWebResponse response = request.GetResponse() as HttpWebResponse)
            {
                StreamReader reader = new StreamReader(response.GetResponseStream());
                return reader.ReadToEnd();
            }
        }

POST方法封装,代码如下:

        /// <summary>
        /// Post方法
        /// </summary>
        /// <param name="url">请求地址</param>
        /// <param name="param">参数</param>
        /// <param name="token">认证Token</param>
        /// <returns></returns>
        private String Post(String url, String param, String token)
        {
            Uri address = new Uri(url);
            HttpWebRequest request = WebRequest.Create(address) as HttpWebRequest;

            request.Method = "POST";
            request.ContentType = "application/x-www-form-urlencoded";

            //写入认证Token
            if (!String.IsNullOrWhiteSpace(token))
                request.Headers.Add("X-Auth-Token", token);

            //写入提交的参数
            if (!String.IsNullOrWhiteSpace(param))
            {
                byte[] byteData = UTF8Encoding.UTF8.GetBytes(param);
                request.ContentLength = byteData.Length;

                using (Stream postStream = request.GetRequestStream())
                {
                    postStream.Write(byteData, 0, byteData.Length);
                }
            }
            //开始请求
            using (HttpWebResponse response = request.GetResponse() as HttpWebResponse)
            {
                StreamReader reader = new StreamReader(response.GetResponseStream());

                return reader.ReadToEnd();
            }
        }


posted @ 2015-12-18 10:04  JuCheap  阅读(15)  评论(0)    收藏  举报