-
UID:129510
-
- 注册时间2012-03-27
- 最后登录2024-04-26
- 在线时间138小时
-
- 发帖114
- 搜Ta的帖子
- 精华0
- 金钱1170
- 威望124
- 贡献值0
- 好评度114
-
访问TA的空间加好友用道具
|
这个 问题发在CSDN上两个礼拜都没人回复 这两天突然对这个感兴趣,找了个网站,首先用用浏览器打开网页输入账户密码,提交的时候用HttpAnalyze软件将post的信息抓下来 我登陆的网站是 www.easyhits4u.com获取到的post的信息如下:. - POST /account.cgi HTTP/1.1Accept: image/gif, image/jpeg, image/pjpeg, image/pjpeg, application/x-shockwave-flash, application/x-ms-application, application/x-ms-xbap, application/vnd.ms-xpsdocument, application/xaml+xml, */*Referer: http://www.easyhits4u.com/Accept-Language: zh-cnUser-Agent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; .NET CLR 3.5.21022; .NET4.0C; .NET4.0E)Content-Type: application/x-www-form-urlencodedAccept-Encoding: gzip,deflateHost: www.easyhits4u.comConnection: Keep-AliveCache-Control: no-cacheContent-Length: 87 f=logon&manual=1&fb_id=&fb_token=&google_code=&username=joke&password=qazwsxedc&x=7&y=5
做了一个 按钮,按钮中实现的内容如下: - //这里是构造要发送的数据 QByteArray postData; postData.append("f=logon&manual=1&fb_id=&fb_token=&username="); postData.append(ui->lineEdit_user->text()); postData.append("&password="); postData.append(ui->lineEdit_Passwd->text()); postData.append("&x=7&y=5"); request = new QNetworkRequest(QUrl("http://www.easyhits4u.com/account.cgi")); //request->setUrl(param); //request->setHeader(); request->setUrl(QUrl("http://www.easyhits4u.com/account.cgi")); request->setHeader(QNetworkRequest::ContentTypeHeader,"application/x-www-form-urlencoded"); request->setRawHeader("Accept","image/gif, image/jpeg, image/pjpeg, image/pjpeg, application/x-shockwave-flash, application/x-ms-application, application/x-ms-xbap, application/vnd.ms-xpsdocument, application/xaml+xml, */*"); request->setRawHeader("Referer","http://www.easyhits4u.com"); request->setRawHeader("Accept-Language","zh-cn"); request->setRawHeader("User-Agent","Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; .NET CLR 3.5.21022; .NET4.0C; .NET4.0E)"); request->setRawHeader("Content-Type","application/x-www-form-urlencoded"); request->setRawHeader("Accept-Encoding","gzip,deflate"); request->setRawHeader("Content-Length","94"); request->setRawHeader("Connection","Keep-Alive"); request->setRawHeader("Cache-Control","no-cache"); reply = netWorkAcessM->post(*request,postData); connect(reply,SIGNAL(error(QNetworkReply::NetworkError)),this,SLOT(replyErrprSlot()));
点击按钮的时候我也用HttpAnalyze工具看了, 没有问题的,可就是登陆不了,而且Post完毕后,也读取不到 数据。 我把那个网站的首页保存下来,把没用的删掉,就剩下登陆框,输入账户密码也是可以登陆的。 保存下来修改过的网页内容 - <!DOCTYPE html><html xmlns="http://www.w3.org/1999/xhtml" xmlns:fb="http://ogp.me/ns/fb#" xml:lang="en" lang="en" style="height: 100%; "><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>EasyHits4U.com - Your Traffic Exchange, 1:1 Exchange Ratio, Manual Surfing, Innovative Referral Program. FREE Traffic!</title></head> <body style="position: relative; min-height: 100%; top: 0px; "> <table cellpadding="0" cellspacing="0" border="0" valign="top" width="19%"> <tbody><tr> <td width="235" valign="top" class="left_column"> <form action="http://www.easyhits4u.com/account.cgi" method="post"> <input type="hidden" name="f" value="logon"> <input type="hidden" name="manual" value="1"> <input type="hidden" name="fb_id" value=""> <input type="hidden" name="fb_token" value=""> <!-- <input type="hidden" name="google_code" value=""> --> <div style="width:175px; padding-left:16px; padding-right:0px; font-size:11px; padding-top:8px; ">Username or Email:<br> <input type="text" name="username" size="30" class="login" value="" style="border: 1px solid rgb(109, 191, 109); "><br> Password:<br> <input type="password" name="password" class="login" value="" style="border: 1px solid rgb(109, 191, 109); "><br> <div align="center"> <input type="image" src="./EasyHits4U.com - Your Traffic Exchange, 1 1 Exchange Ratio, Manual Surfing, Innovative Referral Program. FREE Traffic!_files/enter_btn.jpg" id="enter_btn" alt="Enter" title="Enter"> <div id="fb-root"></div></div> </div></form></td> </tr></tbody></table>
用webview调用我修改过的网页也是可以正常登陆的,但是自己模拟的post就是不行,大家看看我哪里 出错了,有弄过的说过下 而且我发现post的信息中后面的x,y的数据每次都是不一样的,我在网页中也没有发现这个信息是怎么加进去的 f=logon&manual=1&fb_id=&fb_token=&google_code=&username=joke&password=qazwsxedc&x=7&y=5 我测试的时候就写死了,x7,y=5
|