codecamp

YurunOAuthLogin 功能使用

目录

[TOC]

说明

这里仅做最简单使用方法的说明,个性化设置请查阅进阶开发。

所有平台的授权登录调用方法都是一样的,唯一不同的是实例化的类!如果有个性化的参数需要传,采用类属性赋值的方式传递,详见文档。

实例化

$qqOAuth = new \Yurun\OAuthLogin\QQ\OAuth2('appid', 'appkey', 'callbackUrl');

把上面3个参数替换成你的即可。

登录

// 获取登录授权跳转页地址
$url = $qqOAuth->getAuthUrl();
// 存储sdk自动生成的state,回调处理时候要验证
$_SESSION['YURUN_QQ_STATE'] = $qqOAuth->state;
// 跳转到登录页
header('location:' . $url);

回调处理

// 获取accessToken,把之前存储的state传入,会自动判断。获取失败会抛出异常!
$accessToken = $qqOAuth->getAccessToken($_SESSION['YURUN_QQ_STATE']);


// 调用过getAccessToken方法后也可这么获取accessToken
$accessToken = $qqOAuth->accessToken;


// 这是getAccessToken的api请求返回结果,一般不需要用到
$result = $qqOAuth->result;

获取用户资料

// openid,用户在第三方平台的唯一标识
$openid = $qqOAuth->openid;
// 获取用户资料,第一个参数不传则默认使用getAccessToken方法获取到的结果
$userInfo = $qqOAuth->getUserInfo();

到这里常见的登录授权拿资料的流程基本走完,下面的是少数场景需要用到的方法。

刷新AccessToken续期

// $refreshToken需要自行查阅对应平台文档,从哪边获取。
$qqOAuth->refreshToken($refreshToken);
平台 支持刷新
QQ
微信
微博 ×
Github ×

验证AccessToken是否有效

验证AccessToken的实现:使用getUserInfo方法来判断,是否可以正常获取到资料。

$areYouOk = $qqOAuth->validateAccessToken($accessToken);
YurunOAuthLogin 下载安装
YurunOAuthLogin 通用
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }