您的位置:首页 > 理论基础 > 计算机网络

QQ快速登录的实现原理

2017-07-18 23:29 393 查看
今天在浏览器隐身模式下发现也能使用QQ快速登录功能,即在网页上显示当前QQ客户端已登录的QQ头像,并一键登录。如图:



甚是好奇,遂将其实现方式研究一番。

按F12打开控制台后监视网络流量,注意到一个请求,该请求返回的正是本地登录的QQ账号信息。



返回的内容是JavaScript脚本,其中包含了账户信息:

var var_sso_uin_list=[{
"account":"********(此处为QQ号)",
"client_type":65793,
"face_index":603,
"gender":1,
"nickname":"(此处为昵称)",
"uin":"********(此处为QQ号)",
"uin_flag":125***24
}];
ptui_getuins_CB(var_sso_uin_list);


ping localhost.ptlogin2.qq.com可以看到,该地址指向127.0.0.1,即本机。
结论:

实际上,本地QQ客户端监听了4300端口,浏览器通过HTTP请求的方式,向本地QQ[b]客户端发送请求,拿到了当前本地QQ客户端登录的账户信息。[/b]

浏览器向本地QQ发送请求时,请求中带上了能够令本地QQ确认网站合法性的参数,以防止非法用户获得当前本地QQ[b]客户端的账户信息。[/b]
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息