java web QQ(三)
2016-03-24 08:53
441 查看
在上述步骤中我们获取到一个ptuiCB('0','0','http://ptlogin4.web2.qq.com/check_sig?pttype=1&uin=763614984&service=ptqrlogin&nodirect=0&ptsigx=e5d147210105f325fba91bf7ba5264f9418d4dfdfc92aebe97a8b5dab8cce5865fe7a4dc031a30a1d6cbe253100acc27ad1635a1723f92be08ac7ca30a&s_url=http%3A%2F%2Fw.qq.com%2Fproxy.html%3Flogin2a%3D1%26webqq_type%3D10&f_url=&ptlang=2052&ptredirect=100&aid=501004106&daid=164&j_later=0&low_login_hour=0®master=0&pt_login_type=3&pt_aid=0&pt_aaid=16&pt_light=0&pt_3rd_aid=0','0','登录成功!',
'Koow');
其中有一个url地址,请求这个地址,如下图所示
在火狐游览器上你也可以看到此请求
对了,在上一步验证二维码是否扫描的时候如果成功,响应的Cookie中会带有ptwebqq参数,如下图最后一个参数所示
保存ptwebqq参数,在请求ptuiCB('0','0','http://ptlogin4.web2.qq.com/check_sig?pttype=1&uin=763614984&service=ptqrlogin&nodirect=0&ptsigx=e5d147210105f325fba91bf7ba5264f9418d4dfdfc92aebe97a8b5dab8cce5865fe7a4dc031a30a1d6cbe253100acc27ad1635a1723f92be08ac7ca30a&s_url=http%3A%2F%2Fw.qq.com%2Fproxy.html%3Flogin2a%3D1%26webqq_type%3D10&f_url=&ptlang=2052&ptredirect=100&aid=501004106&daid=164&j_later=0&low_login_hour=0®master=0&pt_login_type=3&pt_aid=0&pt_aaid=16&pt_light=0&pt_3rd_aid=0','0','登录成功!',
'Koow');
里的url时候,加入到请求Cookie中,
这个url也会响应一些东西,保存Cookie里的p_skey,pt2gguin,p_uin,pt4_token
下一步,获取VFwebqq
如下图所示,注意要携带请求头部Referer,Cookie带上保存好的ptwebqq参数,最后在返回的json中找到vfwebqq并保存
获取uin和psessionid,代码如下图所示
在火狐里看到的是:
请求这个地址,保存响应头部的uin和psessionid,以备后续使用,在这里要注意的是,这一步是post请求,除了携带必须的
Cookie和Referer外,还必须携带Origin,并且传递表单数据ptwebqq为之前保存的参数,另外三个写死不变
在获取到uin和psessionid的时候,其实你已经登陆成功了,但是会在获取消息的时候报103错误,这个错误有两种方法解决
第一种就是每次报这错误时登陆一下官方的web qq,就可以解决,第二种方法比较简洁,如下所示
注意传递的参数,他在火狐中显示如下图
还是注意请求头部的Cookie与Referer,Cookie中携带之前保存的参数 Vfwebqq,Client_ID,Psessionid
做完以上步骤,你的登录就已经完成了
相关文章推荐
- 【jdk1.8】String源码分析
- Java的Spring框架中实现发送邮件功能的核心代码示例
- Java用链表实现栈和队列
- JavaSe基础(4)---数组
- 【字符编码】Java编码格式探秘
- java代理
- java ee@ Myeclipse 2015 stable 1.0 完美破解方法
- github与eclipse版本控制
- Java线程
- 关于Java类的一些思考
- java多线程同步案列---按照固定格式输出数字和字母
- java 抽象工厂模式简单实例
- java线程
- java多线程同步案例之--生产者消费者模型
- 131. Palindrome Partitioning | Java最短代码实现
- javabeans入门相关
- spring学习笔记(16)趣谈spring 事件机制[2]:多监听器流水线式顺序处理
- JDK1.8源码分析之HashMap(一) (转)
- Eclipse中的Android项目编译后没有生成R文件的两种原因
- windows7设置java的环境变量