新浪开放平台
https://open.weibo.com/apps/977035022/info/basic?action=review#req
1.注册的手机号/验证的手机号必须是没有注册过的,你没注册过不排除你的手机号以前没被注册过
2.先接入sdk流程,才会审核通过
3.上线功能已经下架了,所以应用审核通过后就可以使用了
前端:
<a href="/sina_login.html" openwindowheight="400" openwindowwidth="800" data-third="sina" class="sn icon" pbflag="头部" pbtag="微博" title="微博登录"></a>
后端:
public function sina_login()
{
$sinaConfig = C('SDK_WEIBO');
$appkey = $sinaConfig['APP_KEY'];
$appsecret = $sinaConfig['APP_SECRET'];
$callback = $sinaConfig['CALLBACK'];
require_once ("./ThinkPHP/Library/Vendor/Sina/saetv2.ex.class.php");
$o = new \SaeTOAuthV2( $appkey , $appsecret );
$oauth = $o->getAuthorizeUrl($callback);
header("Location:".$oauth);
}
public function sina_callback()
{
$sinaConfig = C('SDK_WEIBO');
$appkey = $sinaConfig['APP_KEY'];
$appsecret = $sinaConfig['APP_SECRET'];
$callback = $sinaConfig['CALLBACK'];
require_once ("./ThinkPHP/Library/Vendor/Sina/saetv2.ex.class.php");
$o = new \SaeTOAuthV2( $appkey , $appsecret );
if (isset($_REQUEST['code'])) {
$keys = array();
$keys['code'] = $_REQUEST['code'];
$keys['redirect_uri'] = $callback;
$token = $o->getAccessToken( 'code', $keys ) ;
}
if ($token) {
$_SESSION['web_token'] = $token;
setcookie( 'weibojs_'.$o->client_id, http_build_query($token) );
}
$o = new \SaeTClientV2( $appkey , $appsecret , $_SESSION['web_token']['access_token'] );
$ms = $o->home_timeline();
$uid_get = $o->get_uid();
$uid = $uid_get['uid'];
$userInfo = $o->show_user_by_id($uid);//根据ID获取用户等基本信息
if (isset($userInfo['error'])) {
/* echo '微博登录正在开通中';
*/
$this->redirect("Index/index");
exit;
}
//以下是获取用户信息后的内部操作
}