登录成功后服务器响应跳转页面,Java模拟腾讯微博的网页登录成功

继昨日[Java模拟腾讯微博的网页登录失败],终于找到了原因,问题出在登录时u1这个参数上。

在官方的JS中,“http://t.qq.com”是被URL编码后发送的,而我当时以为这个没什么太大关系,所以就直接原文传递了,还是不落大哥一语惊醒梦中人啊:“GET方式不允许有//,你见过那个get方式有//的 ”。 n:-gg

一个低级错误!!!

于是,成功的得到了

ptuiCB(‘0′,’0′,’http://t.qq.com’,'0′);

,接着请求跳转到t.qq.com上去,结果返回的页面竟然是登录页面!!!

这次清空浏览器缓存、cookie等等,重新抓包了一次:

验证码:

GET /check?uin=9920317&appid=46000101&r=0.5222717474862109 HTTP/1.1

Accept: **

Referer: http://ui.ptlogin2.qq.com/login_weibo.html

Accept-Language: zh-cn

Accept-Encoding: gzip, deflate

User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)

Host: ptlogin2.qq.com

Connection: Keep-Alive

Cookie: ptvfsession=a6c347b95596bebab4d042dd37fec5451fbf58f60dac89894fae2de951fca9c40595acf2c80d0bfb699d11dd38559ab2HTTP/1.1 200 OK

Date: Thu, 24 Jun 2010 16 16:19:05 GMT

Server: Tencent Login Server/2.0.0

Set-Cookie: pt2gguin=o0009920317; EXPIRES=Fri, 02-Jan-2020 00:00:00 GMT; PATH=/; DOMAIN=qq.com;

Set-Cookie: uin=o0009920317; PATH=/; DOMAIN=qq.com;

Set-Cookie: skey=@S1PU0AL8j; PATH=/; DOMAIN=qq.com;

Set-Cookie: clientuin=; EXPIRES=Fri, 02-Jan-1970 00:00:00 GMT; PATH=/; DOMAIN=qq.com;

Set-Cookie: clientkey=; EXPIRES=Fri, 02-Jan-1970 00:00:00 GMT; PATH=/; DOMAIN=qq.com;

Set-Cookie: zzpaneluin=; EXPIRES=Fri, 02-Jan-1970 00:00:00 GMT; PATH=/; DOMAIN=qq.com;

Set-Cookie: zzpanelkey=; EXPIRES=Fri, 02-Jan-1970 00:00:00 GMT; PATH=/; DOMAIN=qq.com;

Set-Cookie: ptcz=3922ae737ba492249c275364b7e14210427531e04758cccc9fa5a5542a7871c8; EXPIRES=Fri, 02-Jan-2020 00:00:00 GMT; PATH=/; DOMAIN=qq.com;

Set-Cookie: airkey=; EXPIRES=Fri, 02-Jan-1970 00:00:00 GMT; PATH=/; DOMAIN=qq.com;

Pragma: no-cache

Cache-Control: no-cache; must-revalidate

Connection: Close

Content-Type: application/x-javascript; charset=utf-8

ptuiCB('0','0','http://t.qq.com','0');

跳转:

GET / HTTP/1.1

Accept: application/x-shockwave-flash, image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-silverlight, **

Accept-Language: zh-cn

Accept-Encoding: gzip, deflate

User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)

Host: t.qq.com

Connection: Keep-Alive

Cookie: pt2gguin=o0009920317; uin=o0009920317; skey=@S1PU0AL8j; ptcz=3922ae737ba492249c275364b7e14210427531e04758cccc9fa5a5542a7871c8; mb_june=u0nO3f3CFp4N+OITDhy1GW5rgt7ZghWPsqkD53g43nk4n7aj0Qj6ZF7rQND92Qm4; mb_reg_from=8

HTTP/1.1 200 OK

Date: Thu, 24 Jun 2010 08:19:06 GMT

Server: Apache

Cache-Control: no-cache, must-revalidate

Expires: Thu, 24 Jun 2010 08:19:06 GMT

Pragma: no-cache

Vary: Accept-Encoding

Content-Encoding: gzip

Content-Length: 8135

Connection: close

Content-Type: text/html; charset=utf-8

...........

验证码和登录这两步已经成功了,第二步登录后,服务器端又向响应头中写入了几个cookie值,而其中有些值(pt2gguin,uin,skey,ptcz)在第三次用到了,接着第三次服务器端再次向响应头中写入了几个cookie值(mb_june),最后带上这几个cookie整个页面跳转,这才登录成功。

顺着这个思路终于用Java搞定了。

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值