基本信息
源码名称:thinkphp 集成 第三方登陆接口例子(支持主流平台)
源码大小:0.03M
文件格式:.zip
开发语言:PHP
更新时间:2016-09-25
   友情提示:(无需注册或充值,赞助后即可获取资源下载链接)

     嘿,亲!知识可是无价之宝呢,但咱这精心整理的资料也耗费了不少心血呀。小小地破费一下,绝对物超所值哦!如有下载和支付问题,请联系我们QQ(微信同号):813200300

本次赞助数额为: 2 元 
   源码介绍

1. 基于thinkphp开发

2,目前支持的平台


目前可用登录平台为:腾讯QQ,腾讯微博,新浪微博,网易微博,人人网,360,豆瓣,Github,Google,MSN,点点,百度,开心网,搜狐。

3,包含的文件

ThinkSDK/ThinkOauth.class.php SDK基类,主要用于Oauth的认证,所有平台的SDK均需要继承此类
ThinkSDK/sdk/DiandianSDK.class.php (点点SDK) ThinkSDK/sdk/DoubanSDK.class.php (豆瓣SDK)
ThinkSDK/sdk/GithubSDK.class.php (Github SDK)
ThinkSDK/sdk/GoogleSDK.class.php (Google SDK)
ThinkSDK/sdk/MsnSDK.class.php (MSN SDK)
ThinkSDK/sdk/QqSDK.class.php (腾讯QQ SDK)
ThinkSDK/sdk/RenrenSDK.class.php (人人网SDK)
ThinkSDK/sdk/SinaSDK.class.php (新浪微博SDK)
ThinkSDK/sdk/T163SDK.class.php (网易微博SDK)
ThinkSDK/sdk/TencentSDK.class.php (腾讯微博SDK)
ThinkSDK/sdk/X360SDK.class.php (360 SDK) ThinkSDK/sdk/BaiduSDK.class.php (百度SDK)
ThinkSDK/sdk/KaixinSDK.class.php (开心网SDK)
ThinkSDK/sdk/SohuSDK.class.php (搜狐SDK)


class IndexAction extends Action{
	//SNS登录首页
	public function index(){
		$this->display();
	}
	//登录地址
	public function login($type = null){
		empty($type) && $this->error('参数错误');
		//加载ThinkOauth类并实例化一个对象
		import("ORG.ThinkSDK.ThinkOauth");
		$sns  = ThinkOauth::getInstance($type);
		//跳转到授权页面
		redirect($sns->getRequestCodeURL());
	}
	//授权回调地址
	public function callback($type = null, $code = null){
		(empty($type) || empty($code)) && $this->error('参数错误');
		
		//加载ThinkOauth类并实例化一个对象
		import("ORG.ThinkSDK.ThinkOauth");
		$sns  = ThinkOauth::getInstance($type);
		//腾讯微博需传递的额外参数
		$extend = null;
		if($type == 'tencent'){
			$extend = array('openid' => $this->_get('openid'), 'openkey' => $this->_get('openkey'));
		}
		//请妥善保管这里获取到的Token信息,方便以后API调用
		//调用方法,实例化SDK对象的时候直接作为构造函数的第二个参数传入
		//如: $qq = ThinkOauth::getInstance('qq', $token);
		$token = $sns->getAccessToken($code , $extend);
		//获取当前登录用户信息
		if(is_array($token)){
			$user_info = A('Type', 'Event')->$type($token);
			echo("<h1>恭喜!使用 {$type} 用户登录成功</h1><br>");
			echo("授权信息为:<br>");
			dump($token);
			echo("当前登录用户信息为:<br>");
			dump($user_info);
		}
	}
}