javaEE SSH框架 qq第三方登录及用户绑定

前几天刚申请好域名,下面实现网站的qq第三方登录的功能,javaEE的SSH框架。(一些细节问题没有处理,只是大体上实现)

一:首先说一下需求,第一次使用qq第三方登录的用户需要绑定已有的网站用户名,绑定成功后进入首页。以后再使用qq第三方登录就直接进入网站首页。

二:要想使用qq第三方首先需要申请应用(需要有自己的域名)

(1)登录qq互联网站申请应用,http://connect.qq.com/

javaEE SSH框架 qq第三方登录及用户绑定_第1张图片

(2)创建应用

javaEE SSH框架 qq第三方登录及用户绑定_第2张图片

(3)创建好之后还是可以修改的,这里回调地址我用的是域名+back.jsp界面(这个界面里没什么东西 ,就是引用一下js文件,具体看下面)

javaEE SSH框架 qq第三方登录及用户绑定_第3张图片

(4)会得到一个APPID,这样就可以进行开发了。


三:有关界面方面

(1)引入js文件,data-appid就是自己申请的APPID


(2)界面加入如下代码

javaEE SSH框架 qq第三方登录及用户绑定_第4张图片

然后就可以看到第三方登录按钮了

javaEE SSH框架 qq第三方登录及用户绑定_第5张图片

(3)回调界面,引用一下js文件即可。

javaEE SSH框架 qq第三方登录及用户绑定_第6张图片

四:下面写javascrip处理代码,这个是它的JS_SDK的官方文档,

http://wiki.connect.qq.com/js_sdk%E4%BD%BF%E7%94%A8%E8%AF%B4%E6%98%8E

每个登录用户成功登陆后都会返回一个唯一的openId标识和对应的accessToken

(1)先定义一个form表单,定义两个隐藏标签,将来会得到的openId和accessToken,然后将其交给Action处理


(2)获取用户信息的js代码(它的文档上都有),可以alert一些信息,便于调试,


.complete函数里可以将得到的openId和accessToken的值付给对应的隐藏标签,然后提交表单,交由Action层处理

javaEE SSH框架 qq第三方登录及用户绑定_第7张图片

五:后台处理部分

(1)先设计一下实体类,之前有一个用户类,再定义一个qq登陆信息的类,一对一关系,然后写hibernate映射文件,生成表即可(我这里采用是实体类生成表的方法,具体看我之前的博客,当然也可以先建表然后反向工程生成实体类),

javaEE SSH框架 qq第三方登录及用户绑定_第8张图片

(2)上面提交表单对应的action为bindUserUI,首先查询qq信息表中是否已有数据,如果有并且对应的user不为null,就将其对应的user存入session,跳转到首页;

如果没有则先保存到数据库,跳转绑定界面。(细节再处理)

javaEE SSH框架 qq第三方登录及用户绑定_第9张图片

(3)绑定界面需要用户输入网站的账号密码等信息。

(4)对应处理的方法,如果输入信息正确就设置qq信息表中对应的user外键,成功后跳转首页。

javaEE SSH框架 qq第三方登录及用户绑定_第10张图片

六:测试

(1)输入登录地址

javaEE SSH框架 qq第三方登录及用户绑定_第11张图片

(2)弹出登录界面,点击登录


(3)登录后会alert一些我们之前加的信息

javaEE SSH框架 qq第三方登录及用户绑定_第12张图片

(4)第一次登录需要绑定账号

javaEE SSH框架 qq第三方登录及用户绑定_第13张图片

javaEE SSH框架 qq第三方登录及用户绑定_第14张图片

(5)绑定成功后跳转首页


(6)发现数据库插入信息正确


(7)然后再次登录,


(8)直接进入首页

javaEE SSH框架 qq第三方登录及用户绑定_第15张图片

七:总结

申请qq第三方登录应用需要自己的网站和域名,我之前买的阿里云的CentOS服务器,学生购买有优惠,域名是在万网买的。

这次只是实现了第三方的登录和用户的绑定,一些细节、逻辑问题自己再处理。



你可能感兴趣的:(java,javaee,qq,javaweb,第三方登录,ee)