zoukankan      html  css  js  c++  java
  • POST phpwind 登陆

    private void button2_Click(object sender, EventArgs e)
          {
              string FormURL = "http://bbs.mydigit.cn/login.php";
              string list2 = "?foward=&jumpurl=http://bbs.mydigit.cn&step=2&lgt=0&pwuser=hdl&pwpwd=hdl&question=0&customquest=&answer=&hideid=1&cktime=31536000";
    
              System.Net.CookieContainer cook = new System.Net.CookieContainer();
              string html = Login(FormURL, list2, out cook);
              FormURL = "http://bbs.mydigit.cn/jobcenter.php?action=punch&verify=ce2c8f43&nowtime=2309477852&verify=ce2c8f43&step=2";
              html = HttpRequestHelp.getPage(FormURL, "", ref cook);
              html = Login(FormURL, list2, out cook);
    
              //这里的cookies,需要从哪里获得????
              //问题补充  2009-07-20 18:37
              //request.Headers.Add("Accept-Encoding", "gzip, deflate");
    
              //没事了。去掉这句,就不乱码了。
    
          }
    
          private static string Login(string FormURL, string FormData, out CookieContainer container)
          {
              Encoding encoding = new ASCIIEncoding();
              byte[] data = encoding.GetBytes(FormData);
    
              HttpWebRequest request = (HttpWebRequest)WebRequest.Create(FormURL);
              request.Method = "POST";
              request.Accept = "image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-shockwave-flash, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, */*";
              request.Referer = FormURL;
              request.Headers.Add("Accept-Language", "zh-cn");
              request.ContentType = "application/x-www-form-urlencoded";
              request.Headers.Add("UA-CPU", "x86");
              request.UserAgent = "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; .NET CLR 3.5.21022; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729)";
              request.ContentLength = data.Length;
    
              //应该主要就是cookies的问题,下面方法无效。
              if (container == null || container.Count == 0)
              {
                  container = new CookieContainer();
                  container.GetCookies(new Uri(FormURL));
              }
              request.CookieContainer = container;
              Stream newStream = request.GetRequestStream();
              System.Type type = newStream.GetType();
              newStream.Write(data, 0, data.Length);
              newStream.Close();
    
              HttpWebResponse response = (HttpWebResponse)request.GetResponse();
    
              Stream responsestr = response.GetResponseStream();
              StreamReader responsesr = new StreamReader(responsestr, Encoding.GetEncoding("GB2312"));
    
              //获得测试页面无效,内容为不知编码格式的数据,不是GB2312、UTF8、Unicode
              string html = responsesr.ReadToEnd();
              responsestr.Close();
              responsesr.Close();
              return html;
          }

  • 相关阅读:
    mysql-connector-java(6.0以上)的时差问题
    Mysql中的Date转换
    Intellij idea 告警:'while' statement cannot complete without throwing an exception
    JavaScript数组的操作
    Intellij idea 告警:URI is not registered (Settings | Languages & Frameworks | Schemas and DTDs)
    【网络文摘】2016年里做前端是怎样一种体验
    【JavaScript Demo】回到顶部功能实现
    【JavaScript 插件】实现图片倒影效果
    【读书笔记《Bootstrap 实战》】6.单页营销网站
    【读书笔记《Bootstrap 实战》】5.电子商务网站
  • 原文地址:https://www.cnblogs.com/hdl217/p/2096031.html
Copyright © 2011-2022 走看看