第三方登录

1、介绍

为什么要有第三方登录:关于第三方登录,你应该知道的

现在很多网站都集成了第三方帐号登录的功能,比如QQ登录、微信登录、微博登录。

使用第三方帐号登录目的,简化用户注册的流程,实现快速的注册登录。

第三方登录基本流程:①跳转到第三方认证页面 ②回调地址中的处理

 

2、签约

QQ登录接口,使用也需要申请。

腾讯开放平台:腾讯开放平台beta|开放成就梦想

腾讯开放平台注册:腾讯应用开放平台

QQ互联平台网站:QQ互联官网首页

 

点击应用管理,会要求登录

登录之后,点击应用管理,第一次登录此平台会要求注册成为开发者

分为公司接入和个人接入。

公司接入需要营业执照信息。这里我们平时使用可以选择个人接入

 

审核通过之后可以创建应用了。

选择创建网站应用

进入资料填写页面,填写完成提交

提交成功之后,需要继续完善相关信息

创建成功,进入应用管理页面,可以看到刚创建的应用处于审核中状态

审核成功和审核失败状态下,操作栏都有一个查看按钮,可以点击查看应用详情

参考:

APP ID :101542020

APP Key :539cd4f7784f107fa74ad58d87b5c916

回调地址:People.com | Celebrity News, Exclusives, Photos and Videos

说明:不管审核成功还是审核失败,qq登录的接口都可以使用,区别是,审核成功后所有人的qq都可以登录,审核失败只有申请人的qq可以正常登录。

为了测试qq登录,重新配置一个域名 www.tpshop.com 指向 pyg/public目录

站点域名管理

 3、SDK的下载和配置

 

 

SDK配置:

① 将解压后的目录,移动到public/plugins/目录下,改名为qq

 ② 在浏览器直接访问:域名/plugins/qq/index.php

③ 点击“查看example”,打开测试页面。

④ 按照回调域,在Home模块Login控制器新增qqcallback方法

⑤ 重新测试,使用qq帐号登录,小窗口会发生跳转,访问qqcallback方法。

 

 

4、QQ互联接口的集成

① 分析SDK中的example页面index.html中的代码

参考:public/plugins/qq/example/index.html文件

② 参考example中的做法,修改view/login/login.html

 ③ 修改Login控制器qqcallback方法,获取用户信息

 

 

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、付费专栏及课程。

余额充值