2017 © Pedro Peláez
 

library sys_oauth

thinkphp 3.x weixin weibo qq sns oauth

image

cocolait/sys_oauth

thinkphp 3.x weixin weibo qq sns oauth

  • Saturday, September 9, 2017
  • by cocolait
  • Repository
  • 1 Watchers
  • 0 Stars
  • 22 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 0 Forks
  • 0 Open issues
  • 2 Versions
  • 5 % Grown

The README.md

sys_auth

thinkphp 3.x 第三方登录扩展包 目前支持(QQ登录,新浪登录,微信登录), (*1)

安装(扩展包)

确保已经安装composer 否则无法执行, (*2)

composer require cocolait/sys_oauth

thinkphp 3.x的版本不会自动加载composer 需要手动操作一下

找到index.php入口文件 在框架引入之前加载composer即可, (*3)

// 加载composer
require './vendor/autoload.php';
// 引入ThinkPHP入口文件
require './ThinkPHP/ThinkPHP.php';

配置Config信息

<?php
return [
    //腾讯QQ登录配置
    'SYA_AUTH_QQ'      => [
        'APP_KEY'       => '',  //应用注册成功后分配的 APP ID
        'APP_SECRET'    => '',  //应用注册成功后分配的KEY
        'CALLBACK'      => '',  // 应用回调地址
    ],
    //新浪微博配置
    'SYA_AUTH_SINA'    => [
        'APP_KEY'       => '', //应用注册成功后分配的 APP ID
        'APP_SECRET'    => '', //应用注册成功后分配的KEY
        'CALLBACK'      => '', // 应用回调地址
    ],
    //微信登录
    'SYA_AUTH_WEIXIN' => [
        'APP_KEY' => '',     //应用注册成功后分配的 APP ID
        'APP_SECRET' => '',  //应用注册成功后分配的KEY
        'CALLBACK' => "",    //应用回调地址
    ]
);

控制器操作示列

thinkPHP 3.2.3 为例 php >= 5.3 或者 thinkphp 3.x都支持, (*4)

namespace Home\Controller;
use Think\Controller;
class OauthController extends Controller {
    //登录地址
    //目前type参数 只支持 [qq,sina,weixin]
    public function login($type = null){
        empty($type) && $this->error('参数错误');
        $_SESSION['login_http_referer']=$_SERVER["HTTP_REFERER"];
        $sns  = \Cp\Sys\Oauth::getInstance($type);
        //跳转到授权页面
        redirect($sns->getRequestCodeURL());
    }

    //授权回调地址
    public function callback($type = null, $code = null){
        (empty($type)) && $this->error('参数错误');

        if(empty($code)){
            redirect(__ROOT__."/");
        }

        $sns  = \Cp\Sys\Oauth::getInstance($type);
        $extend = null;
        // 获取TOKEN
        $token = $sns->getAccessToken($code , $extend);

        //获取当前第三方登录用户信息
        if(is_array($token)){
              $user_info = \Cp\Sys\GetInfo::getInstance($type,$token);
              var_dump($user_info);
        }else{
              echo "获取基本信息失败";
        }
    }
}

The Versions

09/09 2017

dev-master

9999999-dev

thinkphp 3.x weixin weibo qq sns oauth

  Sources   Download

Apache

The Requires

  • php >=5.3.0

 

by Avatar cocolait

09/09 2017

1.1

1.1.0.0

thinkphp 3.x weixin weibo qq sns oauth

  Sources   Download

Apache

The Requires

  • php >=5.3.0

 

by Avatar cocolait