JAVA WEB 实现第三方登录 -- qq篇

实验室F老师,下达任务,让我实现一个第三方登录的任务 任务提示:oauth

这个东西弄了我好长时间,不是因为难,而是腾讯开发者申请来来回回的,耗费时间比较长。

所以看到这里,需要做第三方的话,啥也别说,先去注册吧。节约时间并注册

目前这个网站长这个样子:

这里写图片描述
qq第三方这里有点乱,有个qq互联 还有一个qq开放平台……据说这两家不和,搞得信息有点乱。还需擦亮眼

不八卦了,qq互联有很详细的关于第三方登录原理解释(依据oauth) 我要看他的文档 理论部分参考即可

这里说一下实际操作。(一下步骤基于开发者已经申请成功)

1.首先注册一个网页应用,因为是测试,所以随便瞎填就行,正式上线得好好写。然后接受霸王条款
这里写图片描述
下一步要精神了,这是重点,红笔记一下

这里写图片描述
网站域名 单机测试:localhost 即可

回调域,这个地址就是用户登录成功之后qq平台调转到的地址,所以谨慎填写。

剩下的随便写,可以不用上传照片

正式上线按照要求填写

2.创建完成之后,等待不通过审核,?!不通过审核?对,刚才填的乱七八糟的怎么会通过审核。正式上线的话肯定是需要审核通过的,所以前面的信息需要认真填写

但是你会获得两个重要的东西
这里写图片描述
APP ID 和 APP Key (妈妈说这个东西很私密哦~不能给别人乱看)

还有回调地址!
这里写图片描述

3.创建一个web项目

到一开始给的网站,在这里下载SDK,里面有”我知道你超懒已经给你做好的”demo

这里写图片描述
下载完成后打开eclipse 创建一个新项目 (因为腾讯给的demo无法直接导入,所以手动复制粘贴导入)
这里写图片描述
按照这个框架把下载的demo copy进去,大神可以无视

然后研究一下大体结构,这里就不多说了,挺简单的。

然后qqconnectconfig.properties 中把app id key 回调地址写进去
这里写图片描述
之后进入web.xml 回调地址的名字改一下,当然你也可以自己设置你的专属
这里写图片描述
之后欣赏一下成功的页面

页面1 点击第三方登录

这里写图片描述
页面2 跳转qq登录页面
这里写图片描述
页面3 登录成功后返回信息
这里写图片描述
这只是个例子。

其实第三方登录这个活还是主要任务量在前端。

还有一个问题是如何与我们自己做的网站结合。原来一直以为可以获取到用户的qq号,但是发现不行,所以用openid 作为绑定依据。

先是第三方登录,之后获取openid,然后在认证中心用户里按照openid进行查询,匹配到的登录,未匹配到的进行新用户注册或与存在用户绑定。

后来又思考到一个问题,目前是先把qq的第三方跑起来,后续会加入其它第三方的内容,比如微博,微信等。目前认为这些第三方应该都会有一个类似openid 的东西,所以数据库里新建一个表,一个字段是user_id,另一个字段为open_id,这样查询的话直接从这个表里查询。目前是这样构思的。

  • 11
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 13
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 13
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值