## 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
- 擴展插件
- 社會化登錄