我爱编程

qq互联--qq快捷登陆

2018-04-12  本文已影响3638人  呦丶耍脾气

1、介绍

QQ登录接口。作用是实现QQ直接登录某些网站,简化用户登录、注册流程。

现在有很多大型网站都在使用QQ互联登录功能:

X东:


X宁:


X美:



2、签约

官网:http://connect.qq.com

①点击“应用管理”

image.png

②如果资料没有审核通过的话,则可以点击QQ头像填写对应的资料和上传认证的照片,提交审核即可



③当个人资料审核通过之后,就申请应用接口


④选择对应的应用类型


⑤按照要求填写资料


image.png

后续需要等待七个工作日审核。

⑥等待审核完成

当审核完成之后无论是否通过,都会得到接口的key和密钥。

在审核完成之后点击应用后面的“查看”按钮

无论是否通过都可以得到key和id,区别在于

通过审核的接口是任何人都可以实现QQ登录;

没有审核通过的,只有申请人自己的QQ可以QQ登录,其他人的QQ不行;


3、SDK的下载和配置

下载地址:http://wiki.connect.qq.com/sdk%E4%B8%8B%E8%BD%BD

image

①解压压缩包


Api目录:需要的类和函数封装文件的存储目录;
Doc目录:文档目录;
Example目录:接口的demo文件;
Install目录:安装文件目录
Index.php:demo的入口文件;
②需要将其复制到当前的站点中去执行



③打开浏览器访问刚才demo的地址



④配置接口

⑤测试接口登录



点击头像


4、QQ互联接口的集成

①分析demo文件中弹窗为什么会出来



②仿照①中的操作,将弹窗打开的代码引用到当前电商项目中

修改文件User/login.html



同时需要将对应的JavaScript代码复制到当前页面,根据情况做修改:


③编写QQ登录回调地址需要的回调方法

A,当一个用户用QQ或者其他第三方快捷登录登录进系统,其身份有2种,一种是新用户,另外一个是老用户。

B,如何判断用户是新用户还是老用户?这个取决于数据表中的openid

关于openid,在腾讯体系中,openid表示用户的唯一标志,一个QQ用户的openidid对于一个网站来说永远不会变。

如果第一次写callback方法不会写,可以参考SDK。

将callback.php其中的代码复制到callback方法中,根据实际情况修改路径:

之后会报错:


原因是因为命名空间的问题,需要给QC前面添加“\”




Accesstoken是接口在数据传递过程中进行身份验证的一个临时密钥,一般都是有效期。

获取用户详细信息:

需要使用权限get_user_info


输出用户信息(一维数组)


判断当前的用户是新用户还是老用户:


测试的效果:

小窗口跳转,但是登录页面依旧还在。


理想状态下:小窗口关闭,大窗口跳转。

小窗口关闭:关闭窗口可以使用window.close();

大窗口跳转:可以使用JavaScript里的opener属性;



补充:如果接口出现-1错误,需要按照以下方式进行解决

再次实例化QC类



上一篇下一篇

猜你喜欢

热点阅读