java1234开源博客系统
博客信息

官方Demo剖析

0
发布时间:『 2019-01-23 16:23』  博客类别:QQ第三方登录  阅读(176)

QQ第三方登录 演示站点:http://www.open1111.com/


官方Demo剖析


QQ第三方登录官方提供了一个sdk for java

这里提供下下载地址:https://pan.baidu.com/s/12wIZj8hTvLzOOvySqaGyMg


压缩包文件功能:

1.jpg


这个demo是传统的Jsp servlet搞的;


导入项目后,我们第一步,要配置下 qqconnectconfig.properties 

2.jpg


app_Id和app_KEY要修改成你的,申请通过后 官方会提供;包括redirect_URI修改成你申请时候写的回调地址;


然后就可以打包发布到服务器测试了;


这里介绍下关键的几个接口;

3.jpg

index.jsp是首页,点击超链接,请求/login;


4.jpg


进入后台IndexServlet,封装参数,然后重定向请求;进入底层源码看,其实重定向请求的是 

https://graph.qq.com/oauth2.0/authorize 接口;以及封装一堆参数;


接下来是回调处理类:

5.jpg


这里的映射地址得改下 改成你设置的;然后回调处理类 就是AfterLoginRedirectServlet;


6.jpg


关键的三步:

第一步: 获取腾讯服务器返回的accessToken;

第二步:通过accessToken获取openId;(底层分析,这步请求的是https://graph.qq.com/oauth2.0/me 接口 );

第三步:通过accessToken和openId得到用户信息;(底层分析,这步请求是https://graph.qq.com/user/get_user_info接口)


然后得到数据后 放session,放数据库 以及判断啥的 根据自己的业务来搞即可;

这里的openId是每个用户的唯一标识,所以肯定得处理好;



关键字:   QQ登录  
Powered by Java1234 V3.0 Copyright © 2012-2016 Java知识分享网 版权所有