## thinkphp-social
目前已支持:QQ、微信、新浪、百度、Gitee、Github、Oschina、Google、Facebook、淘宝、抖音、小米、钉钉
欢迎提交pr或者建议!
# 配置Config信息
~~~html
// 安装之后会在config目录里自动生成social.php配置文件
<?php
return [
//腾讯QQ登录配置
'qq' => [
'app_key' => '*******', //应用注册成功后分配的 APP ID
'app_secret' => '*******', //应用注册成功后分配的KEY
'callback' => 'http://www.youquanya.com/oauth/callback/type/qq', // 应用回调地址
],
//微信扫码登录配置
'weixin' => [
'app_key' => '*******', //应用注册成功后分配的 APP ID
'app_secret' => '*******', //应用注册成功后分配的KEY
'callback' => 'http://www.youquanya.com/oauth/callback/type/weixin', // 应用回调地址
],
];
~~~
## 用法示例
~~~
<a href="{:url('Oauth/login',['type'=>'qq'])}">QQ登录</a>
<a href="{:url('Oauth/login',['type'=>'sina'])}">新浪微博登录</a>
<a href="{:url('Oauth/login',['type'=>'weixin'])}">微信登录</a>
<a href="{:url('Oauth/login',['type'=>'baidu'])}">百度登录</a>
<a href="{:url('Oauth/login',['type'=>'gitee'])}">gitee登录</a>
<a href="{:url('Oauth/login',['type'=>'github'])}">github登录</a>
<a href="{:url('Oauth/login',['type'=>'oschaina'])}">oschaina登录</a>
<a href="{:url('Oauth/login',['type'=>'google'])}">google登录</a>
<a href="{:url('Oauth/login',['type'=>'facebook'])}">facebook登录</a>
<a href="{:url('Oauth/login',['type'=>'taobao'])}">淘宝登录</a>
<a href="{:url('Oauth/login',['type'=>'douyin'])}">抖音登录</a>
<a href="{:url('Oauth/login',['type'=>'xiaomi'])}">小米登录</a>
<a href="{:url('Oauth/login',['type'=>'dingtalk'])}">钉钉登录</a>
~~~
~~~html
//设置路由
Route::get('oauth/callback','index/oauth/callback');
~~~
~~~html
<?php
namespace app\index\controller;
use think\Controller;
class Oauth extends Controller
{
//登录地址
public function login($type = null)
{
if ($type == null) {
$this->error('参数错误');
}
// 获取对象实例
$sns = \liliuwei\social\Oauth::getInstance($type);
//跳转到授权页面
$this->redirect($sns->getRequestCodeURL());
}
//授权回调地址
public function callback($type = null, $code = null)
{
if ($type == null || $code == null) {
$this->error('参数错误');
}
$sns = \liliuwei\social\Oauth::getInstance($type);
// 获取TOKEN
$token = $sns->getAccessToken($code);
//获取当前第三方登录用户信息
if (is_array($token)) {
$user_info = \liliuwei\social\GetInfo::getInstance($type, $token);
dump($user_info);// 获取第三方用户资料
$sns->openid();//统一使用$sns->openid()获取openid
//$sns->unionid();//QQ和微信、淘宝可以获取unionid
dump($sns->openid());
echo '登录成功!!';
echo '正在持续开发中,敬请期待!!';
} else {
echo "获取第三方用户的基本信息失败";
}
}
}
~~~
- 序言
- 基础
- 功能介绍
- 目录结构
- 正版申明
- 安装教程
- 状态参数
- 第三方接口
- 店铺状态
- 控制器
- 控制器定义
- 控制器模板赋值
- 控制器模板渲染
- 前台控制器
- 前台用户控制器
- 后台控制器
- 跳转,AJAX返回和重定向
- URL生成
- 请求
- 请求信息
- 输入变量
- 请求类型
- 获取请求头信息
- 伪静态
- 更多
- 系统函数
- user_info 用户数据信息
- add_payment 创建支付订单
- 系统预览
- 前台预览
- 后台预览
- 数据库
- 数据库配置
- 添加数据
- 更新数据
- 查询数据
- 删除数据
- 事务操作
- 更多数据库操作
- 模型
- 模型定义
- 添加数据
- 更新数据
- 查询数据
- 删除数据
- API
- 站点接口
- 滚动幻灯
- 商品列表
- 商品信息
- 购买商品
- 用户接口
- 个人信息
- 用户登录
- 用户注册
- 用户退出
- 充值接口
- 在线充值
- 支付回调
- 订单接口
- 订单列表
- 其他接口
- 规范
- 状态码说明
- 版本号
- API路由
- 模板标签
- 模板常量
- 普通标签
- 变量输出
- 系统变量
- 请求参数
- 使用函数
- 使用默认值
- 使用运算符
- 三元运算
- 原样输出
- 模板注释
- 模板目录
- 包含文件
- 模板布局
- 系统标签
- 全局标签
- 源码标签
- 服务标签
- 网站标签
- 域名标签
- 任务标签
- 需求标签
- 推广标签
- 菜单标签
- 内置标签
- 循环输出标签
- 比较标签
- 条件判断
- 标签嵌套
- 原生PHP
- 定义标签
- 专题
- 缓存
- Session
- Cookie
- 分页
- 验证码
- 文件上传
- 第三方扩展
- Swoole
- 扩展插件
- 社会化登录