https://connect.qq.com/
https://connect.qq.com/manage.html#/
https://kf.qq.com/
QQ互联mayikt:Appid:101869698 Appkey:7af6ecb24df7f2ea1d222438a995058e
网站地址:http://daijiangcheng.com
网站回调域:http://yuanxiaoxiang.com/qqLoginBack(需要修改本地host文件)
QQ联合登录实现思路:必须掌握OAuth2.0协议
1.生成QQ联合登录授权链接
https://graph.qq.com/oauth2.0/authorize?response_type =code&client_id=101869698&redirect_uri=http://yuanxiaoxiang.com/qqLoginBack
(腾讯 )用户选择账号后,使用重定向方式跳转回回调地址http://yuanxiaoxiang.com/qqLoginBack 传递一个code参数(7DC0CF1976E3BC641BDEF268E358BE6C)
code为http://yuanxiaoxiang.com/qqLoginBack?code=7DC0CF1976E3BC641BDEF268E358BE6C&state=ac2573203d4c98387b88c7d6e640569b
2.获取授权码code,使用授权码获取用户openid
使用code参数获取accessToken,使用accessToken获取用户信息(openid,头像,qq年龄)
https://graph.qq.com/oauth2.0/token?grant_type=authorization_code&client_id=101869698&client_secret=7af6ecb24df7f2ea1d222438a995058e&code=7DC0CF1976E3BC641BDEF268E358BE6C&redirect_uri=http://yuanxiaoxiang.com/qqLoginBack
https://graph.qq.com/oauth2.0/me?access_token=78F063D0099C23DF1D005BE00A8909F2&expires_in=7776000&refresh_token=9CAF5D586B40034291BAB273A79ABB6D
得到opend------>callback( {"client_id":"101869698","openid":"011F957F99667A7BFAA8FF1CE4805BA1"} );
3.使用openid(011F957F99667A7BFAA8FF1CE4805BA1)可以查询用户信息
openid作用:开放id,开放userid
代码实现思路:
1.编写授权链接接口
2.编写授权回调接口
***获取授权码
***使用授权码获取access_token
***使用access_token获取用户openid
3.使用openid查询数据库user表中是否又关联
***select * from meite_user where QQ_OPENID=‘’;
***如何使用openid能够查询到用户信息,说明用户已经绑定成功,自动实现登录()
***如果使用openid没有查询到用户信息,说明用户没有绑定账户信息,跳转到关联账户页面
***关联账号成功后,修改数据库将openid插入表中 update meite_user set QQ_OPENID=‘’ where id='';
网站接入SDK下载:https://wiki.open.qq.com/wiki/website/SDK下载
打入本地仓库:mvn install:install-file -Dfile=E:/Sdk4J.jar -DgroupId=com.tengxun -DartifactId=sdk4j -Dversion=1.0 -Dpackaging=jar