• SmartQQ二维码登陆接口分析


    SmartQQ是腾讯在Web上推出的一款单纯的聊天工具,pc端与移动端都可以访问,接下来具体的分析下登陆流程。

    网站:http://w.qq.com/

    工具:这个随意能够看到http数据包就可以,浏览器一般都自带开发者工具可以通过快捷键(F12)调出。

    重点来了~

    提取二维码地址

    二维码地址:https://ssl.ptlogin2.qq.com/ptqrshow?appid=501004106&e=0&l=M&s=5&d=72&v=4&t=0.7162917961819727(0.7162917961819727是个随机数字)

    请求方式:get

    登录检测(第一次登陆):

    当你打开http://w.qq.com/网页时,会触发个事件,检测手机端授权。

    地址:https://ssl.ptlogin2.qq.com/ptqrlogin?webqq_type=10&remember_uin=1&login2qq=1&aid=501004106&u1=http%3A%2F%2Fw.qq.com%2Fproxy.html%3Flogin2qq%3D1%26webqq_type%3D10&ptredirect=0&ptlang=2052&daid=164&from_ui=1&pttype=1&dumy=&fp=loginerroralert&action=0-0-598617&mibao_css=m_webqq&t=1&g=1&js_type=0&js_ver=10156&login_sig=&pt_randsalt=2

    请求方式:get

    cookie:使用二维码cookie

    响应内容:

    当手机端未授权时

    ptuiCB('66','0','','0','二维码未失效。(3814721644)', '');
    当手机端授权时

    ptuiCB('67','0','','0','二维码认证中。(691021781)', '');

    当手机端授权成功时

    ptuiCB('0','0','http://ptlogin4.web2.qq.com/check_sig?pttype=1& amp;uin=957019238&service=ptqrlogin&nodirect=0& ptsigx=165f2625307b4a9227fb7e973e8ca09bf5a3739efe6756744b4b6c5e5bd947ba747e8249612ee87e860b24f2ebfdc75eedd071b2ec55e6ab5f025f6ac321f3b4& amp;s_url=http%3A%2F %2Fw.qq.com%2Fproxy.html%3Flogin2qq%3D1%26webqq_type%3D10&f_url=& amp;ptlang=2052&ptredirect=100&aid=501004106&daid=164& j_later=0&low_login_hour=0&regmaster=0&pt_login_type=3& pt_aid=0&pt_aaid=16&pt_light=0&pt_3rd_aid=0','0','登录成功!', '椰子');)

    如果二维码失效,需要重新请求二维码

    参数分析:

     参数 1:错误码,0没有错误。

    参数 2:暂未知。

    参数 3:跳转URL,只有访问过跳转URL才算真正第一次登录完毕。

    参数 4:未知。

    参数 5:描述信息。

    参数 6:未知。

    第二次登录(登录跳转+正式上线):

    跳转登陆

    地址:提取第一次登陆成功响应内容中的参数3

    请求方式:get

    cookie:将上面的cookie合到一起使用

    禁止重定向:真

    请求个地址不知道干嘛,如果不访问有时会出现100100错误

    地址:http://s.web2.qq.com/api/getvfwebqq?ptwebqq=提取第一次登陆成功响应的cookie中的ptwebqq的值&clientid=53999199&psessionid=&t=1458896274129

    请求方式:get

    cookie:将上面的cookie合到一起使用

    协议头:Referer: http://s.web2.qq.com/proxy.html?v=20130916001&callback=1&id=1
        Host: s.web2.qq.com

    第二次登陆

    地址:http://d1.web2.qq.com/channel/login2

    请求方式:post

    请求参数:r=%7B%22ptwebqq%22%3A%22提取第一次登陆成功响应的cookie中的ptwebqq的值%22%2C%22clientid%22%3A53999199%2C%22psessionid%22%3A%22%22%2C%22status%22%3A%22online%22%7D

    协议头:Referer: http://d1.web2.qq.com/proxy.html?v=20151105001&callback=1&id=2

    cookie:将上面的cookie合到一起使用

    响应内容:

     

    正式登陆成功~

    cookie是非常重要的,cookie注意下,应该将所有的cookie都放到一起。

    有什么问题,请留言,更新时间:2016年5月27日22:51:48

  • 相关阅读:
    5-最长回文子串
    String、StringBuffer和StringBuilder的区别(转载)
    LeetCode31题,下一个排列
    BindingResult
    @Validated 和 @Valid
    springboot Filter Interceptor
    @ReponseStatus
    ResponseEntity
    springboot 异常处理机制源码分析
    @RequestMapping的produces作用
  • 原文地址:https://www.cnblogs.com/hands/p/5116745.html
Copyright © 2020-2023  润新知