PHP实现QQ第三方登录
编辑时间:2019-03-13 21:24:30 作者:666666

第一步:去腾讯开放平台或者QQ互联创建一个应用并且通过审核。

网址: http://connect.qq.com/ 需要一个有备案号的域名,可以去万网注册并且利用阿里云的备案系
统进行,剩下的按照腾讯的要求来做。需要注意的是网站回调地址(域)可以具体到某个文件或者方法,因
为,当用户确认授权后会返回数据到你指定的回调地址。

第二步:下载PHP SDK并解压放到自己的项目中

下载地址:http://wiki.connect.qq.com/sdk%E4%B8%8B%E8%BD%BD
需要注意的是:这些SDK是比较旧了,没有命名空间,如果必须要使用命名空间的话。
建议参考:https://packagist.org/packages/kuange/qqconnect 这个类库。
下面几步都是按照旧的SDK包进行的。

第三步:运行PHP SDK的文件夹(connect2.1)

按照表格填写APP ID和APP Key 和回调地址(需要与注册时一致),并且勾选自己需要的功能,QQ
登录的话只需要勾选get_user_info,点击配置。然后就可以删除connect2.1文件夹下除了API
文件夹的所有的文件,想要了解其他功能。
网址:http://wiki.open.qq.com/wiki/website/API%E5%88%97%E8%A1%A8

第四步:在自己的网站上加入“使用QQ登录的图标”。

,获取QQ图标可以到下面
网址:http://wiki.connect.qq.com/%E7%BD%91%E7%AB%99%E5%89%8D%E7%AB%AF%E9%A1%B5%E9%9D%A2%E8%A7%84%E8%8C%83

第五步:在openQQLogin.php中编写代码

目的是跳转到QQ互联提供的登录页面中(第四步中的openQQLogin.php),让用户登录,代码如下

require_once('qqConnectAPI');//引入PHP SDK的核心文件(connect2.1/API/qqConnectAPI)

$oauth = new Oauth();//实例化

$oauth->qq_login();//跳转到QQ互联提供的登录页面中

第六步:处理授权信息

当用户输入自己的账号和密码,或者扫码登录成功后,会将数据(code)返回到QQ互联创建的应用的回调
地址中。(SDK的代码已经帮我们处理了code)。代码如下:
require_once('qqConnectAPI');//引入PHP SDK的核心文件(connect2.1/API/qqConnectAPI)

$oauth = new Oauth();//实例化

$qq_access_token = $oauth->qq_callback();//调用该方法获取access_token(用于获取用户数据的参数)

$qq_openid = $oauth->get_openid();//调用该方法获取openid(用于获取用户数据的参数)

第七步:获取用户数据

代码如下:
$qc = new QC($qq_access_token, $qq_openid);//将access_token和openid作为参数实例化QC对象

$userInfo = $qc->get_user_info();//调用QC对象的get_user_info方法获取数据

第八步:将数据放入数据库

进行各种操作。自此完成。get_user_info返回参数一览
网站:http://wiki.open.qq.com/wiki/website/get_user_info

为什么会有QQ互联和腾讯开放平台?这是历史遗留问题,不影响操作。

如有疑问可以评论进行交流,欢迎指出错误和不足


 点赞 11
 收藏 0
 分享
来说两句吧
最新评论
  • 头像
    rashc 2019-07-27 20:05:48 1
    haojiumeigengxinlea
    回复
    头像
    小白兔奶糖丶 2019-09-26 14:07:06 0
    回复:rashc 最近更新了几篇文章,国庆更新功能、修复BUG
    回复
天气预报
万年历
2015年
7月
返回今天

博客声明

本博客属个人所有,不涉及商业目的。遵守中华人民共和国法律法规、中华民族基本道德和基本网络道德规范,尊重有节制的言论自由和意识形态自由,反对激进、破坏、低俗、广告、投机等不负责任的言行。所有转载的文撰写页面章、图片仅用于说明性目的,被要求或认为适当时,将标注署名与来源。避免转载有明确“不予转载”声明的作品。若不愿某一作品被转用,请及时通知本人。对于无版权或自由版权作品,本博客有权进行修改和传播,一旦涉及实质性修改,本博客将对修改后的作品享有相当的版权。二次转载者请再次确认原作者所给予的权力范围。

本博客所有原创作品,包括文字、资料、图片、网页格式,转载时请标注作者与来源。非经允许,不得用于赢利目的。本博客受中国知识产权、互联网法规和知识共享条例保护和保障,任何人不得进行旨在破坏或牟取私利的行为。本博客声明以简体中文版为准,不对其他语言版本负责。

如有侵权请及时联系我进行处理。邮箱youseeim666@163.com