QQ快速登录的实现原理

今天在浏览器隐身模式下发现也能使用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客户端的账户信息



评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值