zoukankan      html  css  js  c++  java
  • HttpWebRequest、HttpWebResponse简单Demo

    HttpWebRequest 和HttpWebRespons 可以模拟浏览器的行为,对Web进行请求与提交,非常有用,我这里就把自己写的简单的例子收藏在这里

            /// <summary>
            /// 创建一个随机IP
            /// </summary>
            /// <returns>符合IP标准的一个IP值</returns>
            private string GetIP()
            {
                Random random = new Random(DateTime.Now.Millisecond + DateTime.Now.Second * 1000 + DateTime.Now.Minute * 10000 + DateTime.Now.Hour * 100000);
                random.Next(1, 254);
                string ip = random.Next(1, 254) + "." + random.Next(1, 254) + "." + random.Next(1, 254) + "." + random.Next(1, 254);
                return ip;
    
            }
            /// <summary>
            /// 对一个页面进行数据发送,并返回发送后的结果
            /// </summary>
            protected void PostRequest()
            {
                //HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create("http://env.people.com.cn/GB/10725630.html");
    
                string strIPNew = GetIP();
                //内容可以使用HttpWatch 或者 FireBug 把Post的内容复制粘贴到这里
                byte[] btContent = Encoding.ASCII.GetBytes("内容");
    
                //使用Create来创建HttpWebRequest ,一般不要使用new
                HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create("http://XXXXX/index.aspx");;
                // 如果接收方使用 string IP = Request.ServerVariables["HTTP_X_FORWARDED_FOR"] 来获取IP,就可以伪造IP地址信息
                request.Headers.Add("X_FORWARDED_FOR", strIPNew);
                //这里使用Post方式
                request.Method = "POST";
                request.Accept = "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8";
                request.ContentType = "application/x-www-form-urlencoded;charset=gb2312";
                request.ContentLength = btContent.Length;
    
    
    
    
                //把要Post的内容使用流写入
                using (Stream stream = request.GetRequestStream())
                {
                    stream.Write(btContent, 0, btContent.Length);
                }
                //获取返回值
                using (HttpWebResponse response = (HttpWebResponse)request.GetResponse())
                {
                    using (StreamReader reader = new StreamReader(response.GetResponseStream()))
                    {
                        string strContent = reader.ReadToEnd();
                        Response.Write(strContent);
                    }
                }
            }
  • 相关阅读:
    alpha版、beta版、rc版的意思
    回车符(CR)与换行符(LF), ' '和' '的区别
    html 图像映射(一个图像多个连接)
    前端工程师需要明白的「像素」
    通过设置Ionic-Cli代理解决ionic serve跨域调试问题
    Bootstrap Table使用方法详解
    写给移动开发者的 React Native 指南
    Mac中搭建 iOS 的 React Native 环境
    Windows版本搭建安装React Native环境配置及相关问题
    javascript获取wx.config内部字段解决微信分享
  • 原文地址:https://www.cnblogs.com/taofh/p/1712487.html
Copyright © 2011-2022 走看看