QQ快速登录的实现原理

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/rinsmelody/article/details/75331962

今天在浏览器隐身模式下发现也能使用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客户端发送请求,拿到了当前本地QQ客户端登录的账户信息。

浏览器向本地QQ发送请求时,请求中带上了能够令本地QQ确认网站合法性的参数,以防止非法用户获得当前本地QQ客户端的账户信息



阅读更多
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页