HttpRequest Get和Post调用其他页面的方法

HttpRequest Get和Post调用其他页面的方法,需要的朋友可以参考一下

 

   //Get请求方式

     private  string RequestGet( string Url)
    {
         string PageStr =  string.Empty; // 用于存放还回的html
        Uri url =  new Uri(Url); // Uri类 提供统一资源标识符 (URI) 的对象表示形式和对 URI 各部分的轻松访问。就是处理url地址
         try
        {
            HttpWebRequest httprequest = (HttpWebRequest)WebRequest.Create(url); // 根据url地址创建HTTpWebRequest对象
             #region 参数设置
            httprequest.Method =  " get ";
             // ---------------------------------------------设定一些参数(不必要可以)
            
// httprequest.KeepAlive = false; // 持久连接设置为false
            
// httprequest.ProtocolVersion = HttpVersion.Version11; //  网络协议的版本
            
// httprequest.Proxy = WebProxy.GetDefaultProxy(); // 服务器代理
            
// httprequest.ContentType = "application/x-www-form-urlencoded"; // http 头
            
// httprequest.AllowAutoRedirect = true;
            
// httprequest.MaximumAutomaticRedirections = 10;
            
// httprequest.Timeout = 30000; // 设定超时十秒(毫秒)
            
// httprequest.UserAgent = "mozilla/4.0 (compatible; msie 6.0; windows nt 5.1)";  // 浏览器
            
// =================================================
             #endregion
            HttpWebResponse response = (HttpWebResponse)httprequest.GetResponse(); // 使用HttpWebResponse获取请求的还回值
            Stream steam = response.GetResponseStream(); // 从还回对象中获取数据流
            StreamReader reader =  new StreamReader(steam, Encoding.GetEncoding( " gb2312 ")); // 读取数据Encoding.GetEncoding("gb2312")指编码是gb2312,不让中文会乱码的
            PageStr = reader.ReadToEnd();
            reader.Close();
        }
         catch (Exception e)
        {
            PageStr += e.Message;
        }
         return PageStr;
    }

 

 

 //Post请求方式,于Get的方式写法相似,所以解释就些少一点了

 
   private  string RequestPost( string Url, string Context) // 两个参数分别是Url地址和Post过去的数据
    {
         string PageStr= string.Empty;
        Uri url =  new Uri(Url);
         byte[] reqbytes=Encoding.ASCII.GetBytes(Context);
         try
        {
            HttpWebRequest req = (HttpWebRequest)WebRequest.Create(url);
            req.Method =  " post ";
            req.ContentType =  " application/x-www-form-urlencoded ";
            req.ContentLength = reqbytes.Length;
            Stream stm = req.GetRequestStream();
            stm.Write(reqbytes,  0, reqbytes.Length);

            stm.Close();
            HttpWebResponse wr = (HttpWebResponse)req.GetResponse();
            Stream stream = wr.GetResponseStream();
            StreamReader srd=  new StreamReader(stream,Encoding.GetEncoding( " gb2312 "));
            PageStr += srd.ReadToEnd();
            stream.Close();
            srd.Close();
        }
         catch (Exception e)
        {
            PageStr += e.Message;
        }
         return PageStr; 
    }

 

 

public  string  WebClientGet( string  url)

{
    var client = new WebClient();
    client.Headers.Add("user-agent""Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; .NET CLR 1.0.3705;)");
    var stream = client.OpenRead(url);
    if (stream == nullreturn "";
    var reader = new StreamReader(stream, Encoding.Default);
    var result = reader.ReadToEnd();
    stream.Close();
    reader.Close();
    return result;
}

转载于:https://www.cnblogs.com/wolfocme110/p/3849178.html

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值