1.获取pt_local_token

请求

https://xui.ptlogin2.qq.com/cgi-bin/xlogin?s_url=https%3A%2F%2Fhuifu.qq.com%2Findex.html&style=20&appid=715021417&proxy_url=https%3A%2F%2Fhuifu.qq.com%2Fproxy.html

在header的Set-Cookie中记录着该值

2. 获取本机所登陆的QQ号码

请求

https://localhost.ptlogin2.qq.com:4301/pt_get_uins?callback=ptui_getuins_CB&r=0.6694805047494219&pt_local_tk=pt_local_tk

请求头带入Referer,Cookie带入pt_local_token=第一步得到的值
端口是从4000~4008之间的,不确定哪一个

referer:

https://xui.ptlogin2.qq.com/cgi-bin/xlogin?proxy_url=https%3A//qzs.qq.com/qzone/v6/portal/proxy.html&daid=5&&hide_title_bar=1&low_login=0&qlogin_auto_login=1&no_verifyimg=1&link_target=blank&appid=549000912&style=22&target=self&s_url=https%3A%2F%2Fqzs.qzone.qq.com%2Fqzone%2Fv5%2Floginsucc.html%3Fpara%3Dizone&pt_qr_app=手机QQ空间&pt_qr_link=http%3A//z.qzone.com/download.html&self_regurl=https%3A//qzs.qq.com/qzone/v6/reg/index.html&pt_qr_help_link=http%3A//z.qzone.com/download.html&pt_no_auth=1

返回数据

var var_sso_uin_list=
[{“account”:“Q号”,“client_type”:65793,“face_index”:144,“gender”:1,“nickname”:“Blue”,“uin”:“QQ号”,“uin_flag”:4194822}];ptui_getuins_CB(var_sso_uin_list);

3. 获取clientkey

请求:

https://localhost.ptlogin2.qq.com:4301/pt_get_st?clientuin=QQ号&callback=ptui_getst_CB&r=0.7284667321181328&pt_local_tk=-1806654417

请求头带入Referer,Cookie带入pt_local_token=第一步得到的值

clientkey还是在response中的header的Set-Cookie中

4. 获取skey,uin

请求

https://ssl.ptlogin2.qq.com/jump?clientuin=clientuin&keyindex=9&pt_aid=715021417&u1=https%3A%2F%2Fhuifu.qq.com%2Findex.html&pt_local_tk=pt_local_tk&pt_3rd_aid=0&ptopt=1&style=40

请求头带入referer和cookie。
cookie需要带入pt_local_tokenclientuinclientkey等关键参数。

skey,uin还是在response中的header的Set-Cookie中

另外此请求返回数据中有一个URL,其实用这个URL就可以直接登录对方的QQ空间了。
URL 大概下面这样子

ptui_qlogin_CB(‘0’, ‘https://ptlogin2.qzone.qq.com/check_sig?pttype=2&uin=QQ号&service=jump&nodirect=0&ptsigx=06bbcd374ab3c5df7d26d1493f9a6364895db2999b5cb25a3fcf208213a7211c3848716312355f3cb98c44626c6f3fda428d7e4e09f196e1ace0c26f3acd7620&s_url=https%3A%2F%2Fqzs.qzone.qq.com%2Fqzone%2Fv5%2Floginsucc.html%3Fpara%3Dizone%26specifyurl%3Dhttp%3A%2F%2Fuser.qzone.qq.com%2FQ号&f_url=&ptlang=2052&ptredirect=100&aid=1000101&daid=5&j_later=0&low_login_hour=0®master=0&pt_login_type=2&pt_aid=549000912&pt_aaid=0&pt_light=0&pt_3rd_aid=0’, ‘’)

5. 获取p_skey

请求

https://ssl.ptlogin2.qq.com/jump?clientuin=clientuin&keyindex=9&pt_aid=549000912&daid=5&u1=https%3A%2F%2Fqzs.qzone.qq.com%2Fqzone%2Fv5%2Floginsucc.html%3Fpara%3Dizone&pt_local_tk=1543159096&pt_3rd_aid=0&ptopt=1&style=40&has_onekey=1

请求头带入referer和cookie。
cookie需要带入pt_local_token

特别注意:p_skey是在response的Request的Response的Header中

为防止别人恶意传播,此处就不贴代码了。

我把源码放我公众号上了,喜欢研究的朋友可以去取一下,回复: QQ快速登录 即可获取

再放几个常用的接口:

1. 获取QQ全部好友与分组

接口:https://qun.qq.com/cgi-bin/qun_mgr/get_friend_list
POST请求
Header中加入cookie,cookie中带入这三个值:uin=; skey=;p_skey=
Body中带入:bkn=g_tk
g_tk是通过skey经过算法计算出来了,源码中有这个算法

2. QQ群列表

接口:https://qun.qq.com/cgi-bin/qun_mgr/get_group_list
POST请求
Header中加入cookie,cookie中带入这三个值:uin=; skey=;p_skey=
Body中带入:bkn=g_tk

3. 获取某个群的群成员

接口:https://qun.qq.com/cgi-bin/qun_mgr/search_group_members
POST请求

Header中加入cookie,cookie中带入这三个值:uin=; skey=;p_skey=
POST参数:bkn=;gc=群号;sort=0;st=起始位置;end=结束位置
其中end为要获取多少个,st为获取成员的起始位置

QQ快速登录协议分析相关推荐

  1. QQ空间登录协议分析:JS篇

    QQ空间是用GET方法 访问链接: "http://ptlogin2.qq.com/login?u=" + QQ号 + "&p=" + 加密 (QQ号, ...

  2. webqq登录协议分析

    webqq登录协议分析 通过webqq接口,可以实现发送.接收qq消息. 1.首先调用:http://ptlogin2.qq.com/check?appid=1002101&uin=qq号码& ...

  3. JAVA Spring Security对接QQ快速登录(web应用)

    阅读此文需要对Security有大概的了解,了解其运行流程 security对接QQ互联jssdk快速登录 前端使用的是vue.js 1.首先在QQ互联申请一个应用,得到appid和设置好回调地址 2 ...

  4. PHP实现QQ快速登录的方法

    这篇文章主要为大家详细介绍了PHP实现QQ快速登录的3种方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 前言: PHP实现QQ快速登录,罗列了三种方法 方法一:面向过程,回调地址和首次触发登录 ...

  5. PHP实现QQ快速登录

    前言: PHP实现QQ快速登录,罗列了三种方法 方法一:面向过程,回调地址和首次触发登录写到了一个方法页面[因为有了if做判断], 方法二,三:面向对象             1.先调用登录方法,向 ...

  6. php qq授权_PHP实现QQ快速登录的方法

    前言: PHP实现QQ快速登录,罗列了三种方法 方法一:面向过程,回调地址和首次触发登录写到了一个方法页面[因为有了if做判断], 方法二,三:面向对象 1.先调用登录方法,向腾讯发送请求, 2.腾讯 ...

  7. 网站没有备案接入QQ快速登录 QQ互联官网 成功率100%

    鳄鱼君申请QQ互联,为网站接入QQ快捷登录也是废了不少麻烦,为了让大家少走弯路,在这里整理下来给需要的站长朋友们. 网站没有备案接入QQ互联,需要填写申请表格,非常的简单,首先确保你的域名是国际域名, ...

  8. 某游戏盒登录协议分析

    前言 距离上次写博客已经过去了一个月,博主本人在这期间也分析了不少案列,这次分享一个比较综合的案例,难易程度偏简单,适合协议分析练手,下面直接进入正题. 准备工作 首先我们得安装抓包软件,我这里是用F ...

  9. 小米登录协议分析_小米回应小米11充电头兼容问题

    小米11从上市销售至今已经几天时间,相信第一批入手的消费者也都收到了这款骁龙888旗舰.从网友们的使用反馈来看,小米11(点此查看评测)在充电方面出现了一些问题,并且该问题现在得到了官方的回应.元旦期 ...

  10. 小米登录协议分析_小米温湿度传感器协议分析

    博主喜欢玩智能家居的东西,智能家居确实能给家里带了不少的方便. 天气热了,博主想做一个:当屋子有人,并温度高于33度时,开空调.博主已有了一套自家的智能家居系统,有网关.人体红外传感器.红外转发器,就 ...

最新文章

  1. 学习《Linux设备模型浅析之设备篇》笔记(深挖二)
  2. 使用Python,机器学习和深度学习的5个很棒的计算机视觉项目创意!
  3. HDFS重复上传文件将会覆盖原文件
  4. git branch 为什么会进入编辑状态_最好的Git分支管理教程
  5. JavaScript读取本地图片到浏览器
  6. 保护导师,从我做起;爱护博导,人人有责
  7. shell脚本样本_Shell脚本
  8. 读书笔记——计算机组成原理
  9. 微博客程序 Yonkly
  10. html文本框(input)不保存缓存记录
  11. 计算机网络安全技术实验教程,网络安全实验教程
  12. WRF/CMAQ 安装教程
  13. [2017-07-27] 依图科技电话面试
  14. 谈谈 2020 年程序员收入报告
  15. 文献综述在哪儿能找到?
  16. html超酷图片墙特效代码,超酷超绚精美图片展示效果代码(一)
  17. 第2章 Kotlin简介 《Kotin 编程思想·实战》
  18. 【转】用TrueType造字程序自己造字
  19. JOOQ 踩坑和评价
  20. python可以开发手机AAP吗?kivy说可以

热门文章

  1. 互融云小额贷款系统开发:全流程管理的软件开发解决方案
  2. PCB LAYOUT 设计民睿科技有限公司承接PCBLAYOUT项目
  3. Scintilla教程(7): 多选以及滚动
  4. 第二章 JavaWeb HTML与CSS网页设计 建立第一个网页
  5. 香农编码的gui编码_编码香农编码
  6. 网页设计css入门,网页设计基础:Div+CSS布局入门教程
  7. 测试显卡游戏里FPS温度性能的软件,求一个在游戏中显示FPS 显卡温度之类的工具...
  8. CentOS客户端加载ISCSI磁盘
  9. 手工清除U盘里的恶意病毒
  10. Windows查看所有的端口及端口对应的程序