开发前提:QQ互联有审核通过的账号,可以创建应用
QQ登录测试必须在公网上测,本地不行
(一)创建应用
1、登录QQ互联,创建网站应用
2、填写基本信息和回调地址
3、创建成功并审核通过后,可以获取到appid和appkey
(二)编写接口
1、文件下载
进入QQ互联->文档资料->SDK及资源下载->SDK下载,找到网站接入下的PHP SDK v2.2 版本
(网址:http://wiki.connect.qq.com/sdk%E4%B8%8B%E8%BD%BD)
下载解压后是一个connect2.1 文件夹,目录如下:
2、配置初始化设置
打开install->index.php ,根据自己的需求填写内容
将审核通过的appid、appkey 以及 回调地址(图中只是随意填写的数据) 填入,勾选请求授权列表(最基本的可以勾选get_user_info)
点击配置
配置成功后,系统会在API/comm目录下自动生成一个inc.php文件
inc.php 文件里是一串json配置代码,内容是刚刚我们配置的数据
配置结束后,删除除API以外的其他文件
3、优化封装类库,使之能应用于tp5
核心类库为API/class
以下是我优化封装好的类库,具体不做详细解说,有需要可以观看慕课网上的PHP第三方登录—QQ登录
百度网盘分享地址(链接:https://pan.baidu.com/s/1nqvdABY_n0Vg4mUQIOL5ug 密码:6i7w)
4、实例化使用
<?php
namespace app\index\controller;
use think\Controller;
class Index extends Controller
{
//访问QQ登录页面
public function qqLogin(){
$oauth = new \qq_connect\Oauth();
$oauth->qq_login();
}
//qq回调函数
public function qqCallback(){
//请求accesstoken
$oauth = new \qq_connect\Oauth();
$accesstoken = $oauth->qq_callback();
//获取open_id
$openid = $oauth->get_openid();
//设置有效时长(7天)
cookie('accesstoken', $accesstoken, 24*60*60*7);
cookie('openid', $openid, 24*60*60*7);
//根据accesstoken和open_id获取用户的基本信息
$qc = new \qq_connect\QC($accesstoken,$openid);
$userinfo = $qc->get_user_info();
var_dump($userinfo);
}
}
执行即可看到打印出的基本用户信息
以上就是Thinkphp5开发网站QQ第三方登录接口的实例,若有问题,可以给我留言