tp5QQ登录

1)登录成为开发者
官网:https://connect.qq.com
访问上述官网,通过自己的qq帐号登录进入,之后要求填写相关的信息,等着成为开发者后才可以使用该QQ登录功能:
2)创建应用
我们自己的项目需要使用QQ登录功能,那么需要在QQ官网为我们的项目创建一个应用,这个应用只允许我们的项目使用QQ登录功能,并且该应用会提供必须的密钥相关信息供QQ登录使用
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
点击应用的查看按钮,可以看到该应用的密钥信息,用作qq登录使用
应用创建完毕才可以获得对应的appid和appkey是用户集成qq登录的两个必须参数

应用的审核时间一般为1-3个工作日
注意:创建应用的过程中要求输入例如备案号之类的信息,如果没有可以设置假的信息,应用即使没有通过审核也可以获得对应的appid和appkey,但是该应用就是测试应用,只有主人qq可以登录使用。

3)项目下载功能包&配置
在packagist应用市场中下载项目适合本项目的功能包
第一步:给thinkphp5框架项目引入qq登录功能包,访问https://packagist.org,
找到loveteemo/qqconnect依赖包
在这里插入图片描述
下载通用依赖包:
composer require loveteemo/qqconnect
在这里插入图片描述
下载包的存储位置;
在这里插入图片描述
第二步:在application/config.php 配置文件中做配置:
‘auth’=>[
‘qqconnect’ => [
‘appid’ => ‘101537398’,
‘appkey’ => ‘eca771fa8a890fa30e9d105a31aeb1e0’,
‘callback’ => ‘http://www.tp5shop.com/home/user/qqcallback’,
‘scope’ => ‘get_user_info’,
‘errorReport’ => true
]
],
在这里插入图片描述
3、项目应用
(1)点击图标显示登录窗口
第一步:给QQ图标 设置onclick事件使得点击可以弹出QQ登录窗口

function qq_open(){
//弹出一个窗口
//window.open(url子窗口显示的路由地址,窗口名称,窗口参数);
window.open("{:url(’/home/user/qqlogin’)}",“QQ登陆”,‘width=530,height=360,left=350,top=260’);
}
在这里插入图片描述
第二步:制作一个方法,可以使得点击QQ登录图标弹出QQ登录框口
在这里插入图片描述
在这里插入图片描述
什么是callback回调地址呢:
在上图中,已经把本机电脑的QQ账号给获得出来了,用户可以直接点击就登录系统,那么点击已经登录QQ的图标后会发生一系列后续逻辑处理,这个后续逻辑处理就称为“callback回调”,我们需要把后续处理的逻辑地址设置好
4、 回调处理
根据回调地址,在home模块的user控制器里面,添加qqcallback方法;
在这里插入图片描述
在回调函数里面获取的登录者信息如下,打印$qq_user_info = $Qc->get_user_info();的结果。
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
THINKPHP最全第三方登录(包括腾讯QQ、微信、新浪微博、Github、淘宝网、百度、搜狐微博、人人、360、网易等等) 使用方式: 1、使用命名空间 use Org\ThinkSDK\ThinkOauth; 2、设置三方登录的类别并赋予一个变量 $type = ThinkOauth::getInstance('qq'); 3、设置配置文件 'THINK_SDK_(TYPE)' => array( 'APP_KEY' => '', //应用注册成功后分配的 APP ID 'APP_SECRET' => '', //应用注册成功后分配的KEY 'CALLBACK' => '', //注册应用填写的callback ), 上文中的(TYPE)为设置的类别,其值目前有以下几个: //腾讯QQ登录配置 THINK_SDK_QQ // 用户基本信息API接口 user/get_user_info //腾讯微博配置 THINK_SDK_TENCENT // 用户基本信息API接口 user/info //新浪微博配 THINK_SDK_SINA // 用户基本信息API接口 users/show。附加参数:'uid='.$obj->openid() //网易微博配置 THINK_SDK_T163 // 用户基本信息API接口 users/show //人人网配置 THINK_SDK_RENREN // 用户基本信息API接口 users.getInfo //360配置 THINK_SDK_X360 // 用户基本信息API接口 user/me //豆瓣配置 THINK_SDK_DOUBAN // 用户基本信息API接口 user/~me //Github配置 THINK_SDK_GITHUB // 用户基本信息API接口 user //Google配置 THINK_SDK_GOOGLE // 用户基本信息API接口 userinfo //MSN配置 THINK_SDK_MSN // 用户基本信息API接口 msn。附加参数:token //点点配置 THINK_SDK_DIANDIAN // 用户基本信息API接口 user/info //淘宝网配置 THINK_SDK_TAOBAO // 用户基本信息API接口 taobao.user.buyer.get。附加参数:'fields=user_id,nick,sex,buyer_credit,avatar,has_shop,vip_info' //百度配置 THINK_SDK_BAIDU // 用户基本信息API接口 passport/users/getLoggedInUser // 注意,百度的头像位置是http://tb.himg.baidu.com/sys/portrait/item/{$data['portrait']} //开心网配置 THINK_SDK_KAIXIN // 用户基本信息API接口 users/me //搜狐微博配置 THINK_SDK_SOHU // 用户基本信息API接口 i/prv/1/user/get-basic-info 4、实例化一个登录页面 redirect($type->getRequestCodeURL()); 这里的$type是第二部获取的结果 5、回调页面 $code = $this->get('code'); $type = 'QQ'; $sns = ThinkOauth::getInstance($type); //腾讯微博需传递的额外参数 $extend = null; if($type == 'tencent'){ $extend = array('openid' => $this->_get('openid'), 'openkey' => $this->_get('openkey')); } //请妥善保管这里获取到的Tok
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值