C# 请求页面


        /// <summary>
        /// 请求指定页面并返回页面输出内容
        /// </summary>
        /// <param name="PageURL"></param>
        /// <param name="Method"></param>
        /// <param name="Data"></param>
        /// <param name="Charset"></param>
        /// <returns></returns>
        public static String GetPage(String PageURL, string Method, string Data, String Charset)
        {
            String strHtml = "";
            try
            {
                //连接到目标网页
                HttpWebRequest wreq = (HttpWebRequest)WebRequest.Create(PageURL);
                wreq.Method = Method;
                wreq.ContentType = "application/x-www-form-urlencoded";
                wreq.UserAgent = "Mozilla/5.0 (Windows; U; Windows NT 6.1; zh-CN; rv:1.9.2.8) Gecko/20100722 Firefox/3.6.8";

                if (!string.IsNullOrEmpty(Data))
                {
                    using (StreamWriter dataWriter = new StreamWriter(wreq.GetRequestStream()))
                    {
                        dataWriter.Write("params=" + Data);
                        dataWriter.Close();
                    }
                }

                HttpWebResponse wresp = (HttpWebResponse)wreq.GetResponse();
                //采用流读取,并确定编码方式
                Stream s = wresp.GetResponseStream();
                StreamReader objReader = new StreamReader(s, Encoding.GetEncoding(Charset));
                strHtml = objReader.ReadToEnd();
                objReader.Close();
                return strHtml;
            }
            catch (WebException ex)
            {
                if (ex.Response != null)
                {
                    HttpWebResponse res = ex.Response as HttpWebResponse;

                    if (res.StatusCode == HttpStatusCode.InternalServerError)
                    {
                        Stream s = res.GetResponseStream();
                        StreamReader objReader = new StreamReader(s, System.Text.Encoding.GetEncoding(Charset));
                        strHtml = objReader.ReadToEnd();
                        objReader.Close();
                    }
                    else
                    {
                        strHtml = ex.Message;
                    }
                }
                else
                {
                    strHtml = ex.Message;
                }
                return strHtml;
            }
        }

        /// <summary>
        /// 请求指定页面并返回页面输出内容
        /// </summary>
        /// <param name="PageURL"></param>
        /// <param name="Method"></param>
        /// <param name="Data"></param>
        /// <param name="Charset"></param>
        /// <returns></returns>
        public static String GetPagejson(String PageURL, string Method, string Data, String Charset)
        {
            String strHtml = "";
            try
            {
                //连接到目标网页
                HttpWebRequest wreq = (HttpWebRequest)WebRequest.Create(PageURL);
                wreq.Method = Method;
                wreq.ContentType = "application/json";
                wreq.UserAgent = "Mozilla/5.0 (Windows; U; Windows NT 6.1; zh-CN; rv:1.9.2.8) Gecko/20100722 Firefox/3.6.8";
                if (!string.IsNullOrEmpty(Data))
                {
                    using (StreamWriter dataWriter = new StreamWriter(wreq.GetRequestStream()))
                    {
                        dataWriter.Write(Data);
                        dataWriter.Close();
                    }
                }

                HttpWebResponse wresp = (HttpWebResponse)wreq.GetResponse();
                //采用流读取,并确定编码方式
                Stream s = wresp.GetResponseStream();
                StreamReader objReader = new StreamReader(s, Encoding.GetEncoding(Charset));
                strHtml = objReader.ReadToEnd();
                objReader.Close();
                return strHtml;
            }
            catch (WebException ex)
            {
                if (ex.Response != null)
                {
                    HttpWebResponse res = ex.Response as HttpWebResponse;

                    if (res.StatusCode == HttpStatusCode.InternalServerError)
                    {
                        Stream s = res.GetResponseStream();
                        StreamReader objReader = new StreamReader(s, System.Text.Encoding.GetEncoding(Charset));
                        strHtml = objReader.ReadToEnd();
                        objReader.Close();
                    }
                    else
                    {
                        strHtml = ex.Message;
                    }
                }
                else
                {
                    strHtml = ex.Message;
                }
                return strHtml;
            }
        }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值