我真不懂NET 2015-05-29 07:15 采纳率: 80%
浏览 3000

HttpWebRequest能模拟XMLHttpRequest的post请求吗?

如果能模拟,请问该如何具体实现。

 HttpWebRequest myRequest = (HttpWebRequest)WebRequest.Create(requestUrlString);
                ASCIIEncoding encoding = new ASCIIEncoding();
                byte[] data = encoding.GetBytes(loginpostData);
                myRequest.UserAgent = "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:40.0) Gecko/20100101 Firefox/40.0";
                myRequest.Accept = "application/json, text/javascript, */*; q=0.01";
                myRequest.Method = "POST";
                myRequest.ContentType = "application/x-www-form-urlencoded";
                myRequest.Referer = "http://www.ewt360.com/";
                myRequest.Host = "www.ewt360.com";
                myRequest.ContentLength = data.Length;
                Stream newStream = myRequest.GetRequestStream();
                newStream.Write(data, 0, data.Length);
                newStream.Close();
                myRequest.CookieContainer = new CookieContainer();
                //将请求的结果发送给客户端(界面、应用)
                HttpWebResponse myResponse = (HttpWebResponse)myRequest.GetResponse();
                myResponse.Cookies = myRequest.CookieContainer.GetCookies(myRequest.RequestUri);
                cookie.Add(myResponse.Cookies);
                StreamReader reader = new StreamReader(myResponse.GetResponseStream(), Encoding.UTF8);
                return reader.ReadToEnd();
                            我的代码在获取响应的时候报错了,我想在一个网站上模拟登陆,发现它登陆的时候发送了三个XHR请求,请问我是不是这三个请求都要模拟一遍,还是只要模拟第一个请求呢?没有C币了真心求好心人帮助,做这个数据抓取我已经做的心力憔悴了
  • 写回答

1条回答

  • Go 旅城通票 2015-05-29 07:25
    关注

    肯定可以,如果无法登陆,说明你缺少提交的数据,或者没有找到验证数据的接口地址。

    发送3个xhr请求,你得研究下他们是否有关系,如果有关系,你必须3个xhr请求的地址都要用webrequest对象请求一遍,获取需要的数据

    评论

报告相同问题?

悬赏问题

  • ¥15 如何处理复杂数据表格的除法运算
  • ¥15 如何用stc8h1k08的片子做485数据透传的功能?(关键词-串口)
  • ¥15 有兄弟姐妹会用word插图功能制作类似citespace的图片吗?
  • ¥200 uniapp长期运行卡死问题解决
  • ¥15 请教:如何用postman调用本地虚拟机区块链接上的合约?
  • ¥15 为什么使用javacv转封装rtsp为rtmp时出现如下问题:[h264 @ 000000004faf7500]no frame?
  • ¥15 乘性高斯噪声在深度学习网络中的应用
  • ¥15 关于docker部署flink集成hadoop的yarn,请教个问题 flink启动yarn-session.sh连不上hadoop,这个整了好几天一直不行,求帮忙看一下怎么解决
  • ¥15 深度学习根据CNN网络模型,搭建BP模型并训练MNIST数据集
  • ¥15 C++ 头文件/宏冲突问题解决