本文整理汇总了PHP中OAuth::init方法的典型用法代码示例。如果您正苦于以下问题:PHP OAuth::init方法的具体用法?PHP OAuth::init怎么用?PHP OAuth::init使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类OAuth
的用法示例。
在下文中一共展示了OAuth::init方法的11个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: shouquan
public function shouquan($code, $openid, $openkey, $redirect_uri)
{
OAuth::init($this->client_id, $this->client_secret);
Tencent::$debug = $this->debug;
$callback = $redirect_uri;
//回调url
if ($code) {
//已获得code
//获取授权token
$url = OAuth::getAccessToken($code, $callback);
$r = Http::request($url);
parse_str($r, $out);
//存储授权数据
if (@$out['access_token']) {
$_SESSION['t_access_token'] = $out['access_token'];
$_SESSION['t_refresh_token'] = $out['refresh_token'];
$_SESSION['t_expire_in'] = $out['expires_in'];
$_SESSION['t_code'] = $code;
$_SESSION['t_openid'] = $openid;
$_SESSION['t_openkey'] = $openkey;
//验证授权
$r = OAuth::checkOAuthValid();
if ($r) {
//echo('<h3>授权成功!!!</h3><br>');
//print_r($r);exit;
//header('Location: ' . $callback);//刷新页面
return $r;
} else {
exit('<h3>授权失败,请重试</h3>');
}
} else {
exit($r);
}
}
}
示例2: Tencent
function Tencent()
{
require_once APP_ROOT_PATH . 'system/api_login/Tencent/Tencent.php';
OAuth::init($GLOBALS['m_config']['tencent_app_key'], $GLOBALS['m_config']['tencent_app_secret']);
$openid = trim($GLOBALS['request']['openid']);
$openkey = trim($GLOBALS['request']['openkey']);
if ($GLOBALS['m_config']['tencent_bind_url'] == "") {
$app_url = get_domain() . APP_ROOT . "/api_callback.php?c=Tencent";
} else {
$app_url = $GLOBALS['m_config']['tencent_bind_url'];
}
$access_token = trim($GLOBALS['request']['access_token']);
es_session::set("t_access_token", $access_token);
es_session::set("t_openid", $openid);
es_session::set("t_openkey", $openkey);
if (es_session::get("t_access_token") || es_session::get("t_openid") && es_session::get("t_openkey")) {
$r = Tencent::api('user/info');
$r = json_decode($r, true);
$name = $r['data']['name'];
if ($GLOBALS['db']->getOne("select count(*) from " . DB_PREFIX . "user where tencent_id = '" . $name . "'") == 0) {
$GLOBALS['db']->query("update " . DB_PREFIX . "user set t_access_token ='" . $access_token . "',t_openkey = '" . $openkey . "',t_openid = '" . $openid . "', tencent_id = '" . $name . "' where id =" . intval($GLOBALS['user_info']['id']));
} elseif (intval($GLOBALS['db']->getOne("select id from " . DB_PREFIX . "user where tencent_id = '" . $name . "'")) == intval($GLOBALS['user_info']['id'])) {
$GLOBALS['db']->query("update " . DB_PREFIX . "user set t_access_token ='" . $access_token . "',t_openkey = '" . $openkey . "',t_openid = '" . $openid . "', tencent_id = '" . $name . "' where id =" . intval($GLOBALS['user_info']['id']));
} else {
$root['return'] = 0;
$root['info'] = "该微博帐号已被其他会员绑定";
output($root);
}
}
$root['return'] = 1;
$root['info'] = "绑定成功";
$root['login_type'] = "Tencent";
output($root);
}
示例3: checkUser
public function checkUser($do)
{
// dump($_REQUEST);
// dump($do);
// exit;
OAuth::init(QQ_KEY, QQ_SECRET);
$callback = $this->getCallback('qq', $do);
if ($_REQUEST['code']) {
$code = $_REQUEST['code'];
$openid = $_REQUEST['openid'];
$openkey = $_REQUEST['openkey'];
//获取授权token
$url = OAuth::getAccessToken($code, $callback);
$r = Http::request($url);
parse_str($r, $out);
//存储授权数据
if ($out['access_token']) {
$_SESSION['t_access_token'] = $out['access_token'];
$_SESSION['t_refresh_token'] = $out['refresh_token'];
$_SESSION['t_expire_in'] = $out['expires_in'];
$_SESSION['t_code'] = $code;
$_SESSION['t_openid'] = $openid;
$_SESSION['t_openkey'] = $openkey;
$_SESSION['qq']['access_token'] = $out['access_token'];
$_SESSION['qq']['refresh_token'] = $out['refresh_token'];
$_SESSION['open_platform_type'] = 'qq';
//验证授权
$r = OAuth::checkOAuthValid();
if ($r) {
// header('Location: ' . $callback);//刷新页面
return true;
} else {
// exit('<h3>授权失败,请重试</h3>');
return false;
}
} else {
exit($r);
}
} else {
//获取授权code
if ($_GET['openid'] && $_GET['openkey']) {
//应用频道
$_SESSION['t_openid'] = $_GET['openid'];
$_SESSION['t_openkey'] = $_GET['openkey'];
//验证授权
$r = OAuth::checkOAuthValid();
if ($r) {
// header('Location: ' . $callback);//刷新页面
return true;
} else {
// exit('<h3>授权失败,请重试</h3>');
return false;
}
} else {
$url = OAuth::getAuthorizeURL($callback);
header('Location: ' . $url);
}
}
}
示例4: init
/**
* load some required files
*/
function init()
{
parent::init();
$row = $this->member_get_oauth_type($this->type);
if (!$row->id) {
exit('access deny');
}
$this->oauth_id = $row->id;
$this->app_key = $row->key1;
$this->app_secret = $row->key2;
$this->url = host() . url('oauth/' . $this->type . '/return');
session_start();
Load::file(base_path() . 'modules/oauth/libraries/qq/Tencent.php');
\OAuth::init($this->app_key, $this->app_secret);
\Tencent::$debug = false;
}
示例5: addthis
function addthis()
{
@session_start();
require 'config/OAuth_config.php';
require 'libs/OAuth.php';
$oauth = new OAuth();
$oauth->init();
if ($oauth->authCode) {
$_SESSION['authcode'] = $oauth->authCode;
}
if ($oauth->user['loggedIn']) {
print_r($oauth->user);
$dd = get_user_by('login', $oauth->user);
if (!$dd) {
//$random_password = wp_generate_password();
$userdata = array('user_login' => $oauth->user, 'user_pass' => $oauth->user, 'user_nicename' => $oauth->user, 'display_name' => $oauth->user);
$user_id = wp_insert_user($userdata);
@add_user_meta($user_id, 'wp_capabilities', 'a:1:{s:6:"author";b:1;}');
}
$dd = get_user_by('login', $oauth->user);
$creds = array();
$a = $dd->get('$user_login');
$creds['user_login'] = "{$a}";
$creds['user_password'] = "{$a}";
$creds['remember'] = false;
$u = wp_signon($creds);
if (is_wp_error($u)) {
echo $u->get_error_message();
} else {
$h = $_SERVER['HTTP_HOST'];
echo '<meta http-equiv="refresh" content="1";url="$h">';
}
} else {
echo "<a href='{$oauth->signinURL}'>Sign In</a> ";
}
}
示例6: Tencent
function Tencent()
{
es_session::start();
require_once APP_ROOT_PATH . 'system/api_login/Tencent/Tencent.php';
OAuth::init($GLOBALS['m_config']['tencent_app_key'], $GLOBALS['m_config']['tencent_app_secret']);
$openid = trim($GLOBALS['request']['openid']);
$openkey = trim($GLOBALS['request']['openkey']);
if ($GLOBALS['m_config']['tencent_bind_url'] == "") {
$app_url = get_domain() . APP_ROOT . "/api_callback.php?c=Tencent";
} else {
$app_url = $GLOBALS['m_config']['tencent_bind_url'];
}
$access_token = trim($GLOBALS['request']['access_token']);
es_session::set("t_access_token", $access_token);
es_session::set("t_openid", $openid);
es_session::set("t_openkey", $openkey);
if (es_session::get("t_access_token") || es_session::get("t_openid") && es_session::get("t_openkey")) {
$r = Tencent::api('user/info');
$r = json_decode($r, true);
$name = $r['data']['name'];
$user_data = $GLOBALS['db']->getRow("select * from " . DB_PREFIX . "user where tencent_id = '" . $name . "' and tencent_id <> ''");
if ($user_data) {
if ($user_data['is_effect'] == 0 || $user_data['is_delete'] == 1) {
$result['resulttype'] = 0;
} else {
$user_current_group = $GLOBALS['db']->getRow("select * from " . DB_PREFIX . "user_group where id = " . intval($user_data['group_id']));
$user_group = $GLOBALS['db']->getRow("select * from " . DB_PREFIX . "user_group where score <=" . intval($user_data['score']) . " order by score desc");
if ($user_current_group['score'] < $user_group['score']) {
$user_data['group_id'] = intval($user_group['id']);
}
$GLOBALS['db']->query("update " . DB_PREFIX . "user set t_access_token ='" . $access_token . "',t_openkey = '" . $openkey . "',t_openid = '" . $openid . "', login_ip = '" . get_client_ip() . "',login_time= " . get_gmtime() . ",group_id=" . intval($user_data['group_id']) . " where id =" . $user_data['id']);
$GLOBALS['db']->query("update " . DB_PREFIX . "deal_cart set user_id = " . intval($user_data['id']) . " where session_id = '" . es_session::id() . "'");
$result['user_pwd'] = $user_data['user_pwd'];
$result['uid'] = $user_data['id'];
$result['email'] = $user_data['email'];
$result['user_avatar'] = get_abs_img_root(get_muser_avatar($user_data['id'], "big"));
$name = $user_data['user_name'];
$result['resulttype'] = 1;
}
} else {
$result['email'] = "";
$result['user_pwd'] = md5(get_gmtime());
$result['user_name'] = $name;
$result['t_access_token'] = $access_token;
$result['t_openkey'] = $openkey;
$result['t_openid'] = $openid;
$result['tencent_id'] = $name;
$result['uid'] = bind_add_user($result);
if ($result['uid'] > 0) {
$result['user_avatar'] = '';
$result['resulttype'] = 1;
} else {
$result['resulttype'] = -1;
}
}
}
$result['openid'] = $openid;
$result['openkey'] = $openkey;
$result['access_token'] = $access_token;
$result['tencent_id'] = $name;
$result['user_name'] = $name;
$result['act'] = "synclogin";
$result['login_type'] = "Tencent";
output($result);
}
示例7: send_message
public function send_message($data)
{
require_once APP_ROOT_PATH . 'system/api_login/Tencent/Tencent.php';
OAuth::init($this->api['config']['app_key'], $this->api['config']['app_secret']);
$uid = intval($GLOBALS['user_info']['id']);
$udata = $GLOBALS['db']->getRow("select * from " . DB_PREFIX . "user where id = " . $uid);
es_session::set("t_access_token", $udata['t_access_token']);
es_session::set("t_openid", $udata['t_openid']);
es_session::set("t_openkey", $udata['t_openkey']);
if (es_session::get("t_access_token") || es_session::get("t_openid") && es_session::get("t_openkey")) {
if (!empty($data['img'])) {
$params = array('content' => $data['content'], 'clientip' => get_client_ip(), 'format' => 'json');
$multi = array('pic' => $data['img']);
$r = Tencent::api('t/add_pic', $params, 'POST', $multi);
} else {
$params = array('content' => $data['content'], 'clientip' => get_client_ip(), 'format' => 'json');
$r = Tencent::api('t/add', $params, 'POST');
}
$msg = json_decode($r, true);
if (intval($msg['errcode']) == 0) {
$result['status'] = true;
$result['msg'] = "success";
ajax_return($result);
} else {
$result['status'] = false;
$result['msg'] = "腾讯微博" . $msg['msg'];
ajax_return($result);
}
}
}
示例8: oauthRoute
public static function oauthRoute($type)
{
global $kekezu, $weibo_list;
require S_ROOT . "include/oauth/config.php";
if ($type === 'sina') {
require S_ROOT . "include/oauth/sina/saetv2.ex.class.php";
$o = new SaeTOAuthV2(WB_AKEY, WB_SKEY);
$code_url = $o->getAuthorizeURL(WB_CALLBACK_URL);
}
if ($type === 'qq') {
require S_ROOT . "include/oauth/qq/qqConnectAPI.php";
$qqConnectAPI = new QC();
$qqConnectAPI->qq_login();
die;
}
if ($type === 'ten') {
require S_ROOT . "include/oauth/ten/Tencent.php";
OAuth::init(TEN_AKEY, TEN_SKEY);
Tencent::$debug = false;
$code_url = OAuth::getAuthorizeURL(TEN_CALLBACK_URL);
}
if ($type === 'renren') {
require S_ROOT . "include/oauth/renren/rennclient/RennClient.php";
$rennClient = new RennClient(APP_KEY, APP_SECRET);
$state = uniqid('renren_', true);
$_SESSION['renren_state'] = $state;
$code_url = $rennClient->getAuthorizeURL(CALLBACK_URL, 'code', $state);
}
if ($type === 'douban') {
require S_ROOT . 'include/oauth/douban/douban.php';
$douBan = new doubanPHP(DB_APIKEY, DB_SECRET);
$code_url = $douBan->login_url(DB_CALLBACK_URL, DB_SCOPE);
}
header("location:" . $code_url);
}
示例9: OAuth
<?php
session_start();
require_once "functions.php";
$_SESSION['user_rollno'] = "CS13B027";
redirectTo("afterlogin.php");
require 'oauth/oauth_config.php';
require 'oauth/oauth.php';
$oauth = new OAuth();
$oauth->init();
if ($oauth->authCode) {
$_SESSION['authcode'] = $oauth->authCode;
}
if ($oauth->user['loggedIn']) {
$_SESSION['user_rollno'] = $oauth->user['username'];
$connectionObject = getConnection();
$resultObject = queryDB($connectionObject, "SELECT rollno FROM userinfo where rollno = '{$_SESSION['user_rollno']}' ");
if (!$resultObject->num_rows) {
queryDB($connectionObject, "INSERT INTO userinfo (rollno, count) VALUES ('{$_SESSION['user_rollno']}',1)");
redirectTo("updateprofile.php?firsttime=1");
}
$connectionObject->close();
// print_r($_SESSION);
redirectTo("afterlogin.php");
} else {
echo "<a href='{$oauth->signinURL}'>Sign In</a> ";
}
/*
*
* $connection = mysql_connect($WEBHOST,$USER,$PASSWORD);
* if(!$connection){
示例10:
<?php
/**
* 此为PHP-SDK 2.0
*/
require_once BASE_DATA_PATH . DS . 'api' . DS . 'snsapi' . DS . 'qqweibo' . DS . 'tencent.php';
require_once BASE_DATA_PATH . DS . 'api' . DS . 'snsapi' . DS . 'qqweibo' . DS . 'config.php';
OAuth::init($client_id, $client_secret);
Tencent::$debug = $debug;
if ($_GET['code']) {
//已获得code
$code = $_GET['code'];
$openid = $_GET['openid'];
$openkey = $_GET['openkey'];
//获取授权token
$url = OAuth::getAccessToken($code, $callback);
$r = Http::request($url);
parse_str($r, $out);
//存储授权数据
if ($out['access_token']) {
$_SESSION['qqweibo']['t_access_token'] = $out['access_token'];
$_SESSION['qqweibo']['t_expire_in'] = $out['expires_in'];
$_SESSION['qqweibo']['t_refresh_token'] = $out['refresh_token'];
$_SESSION['qqweibo']['t_uname'] = $out['name'];
$_SESSION['qqweibo']['t_code'] = $code;
$_SESSION['qqweibo']['t_openid'] = $openid;
//OpenID可以唯一标识一个用户。在同一个应用下,同一个QQ号码的OpenID是相同的;但在不同应用下,同一个QQ号码可能有不同的OpenID
$_SESSION['qqweibo']['t_openkey'] = $openkey;
//OpenKey是与OpenID对应的用户key(用户在第三方应用的腾讯登录态),是验证OpenID身份的验证密钥,大多数API的访问,都需要同时具备OpenID和OpenKey的信息,其有效期为2小时
//验证授权
$r = OAuth::checkOAuthValid();
示例11: callback
public function callback()
{
OAuth::init($this->api['config']['app_key'], $this->api['config']['app_secret']);
Tencent::$debug = $debug;
$callback = SITE_DOMAIN . APP_ROOT . "/api_callback.php?c=Tencent";
if (es_session::is_set('t_access_token') || es_session::is_set('t_openid') && es_session::is_set('t_openkey')) {
//用户已授权
//echo '<pre><h3>已授权</h3>用户信息:<br>';
//获取用户信息
$r = Tencent::api('user/info');
$json_data = json_decode($r, true);
//print_r($json_data);
// echo '</pre>';
} else {
if ($_GET['code']) {
//已获得code
$code = $_GET['code'];
$openid = $_GET['openid'];
$openkey = $_GET['openkey'];
//获取授权token
$url = OAuth::getAccessToken($code, $callback);
$r = Http::request($url);
parse_str($r, $out);
//存储授权数据
if ($out['access_token']) {
es_session::set('t_access_token', $out['access_token']);
es_session::set('refresh_token', $out['refresh_token']);
es_session::set('expires_in', $out['expires_in']);
es_session::set('t_code', $code);
es_session::set('t_openid', $openid);
es_session::set('t_openkey', $openkey);
//验证授权
$r = OAuth::checkOAuthValid();
if ($r) {
app_redirect($callback);
//刷新页面
} else {
exit('<h3>授权失败,请重试</h3>');
}
} else {
exit($r);
}
} else {
//获取授权code
if ($_GET['openid'] && $_GET['openkey']) {
//应用频道
s_session::set('t_openid', $_GET['openid']);
es_session::set('t_openkey', $_GET['openkey']);
//验证授权
$r = OAuth::checkOAuthValid();
if ($r) {
app_redirect($callback);
//刷新页面
} else {
exit('<h3>授权失败,请重试</h3>');
}
} else {
$url = OAuth::getAuthorizeURL($callback);
app_redirect($url);
}
}
}
if ($json_data['msg'] != "ok") {
echo '<pre><h3>出错了</h3><pre>';
die;
}
$is_bind = intval($_REQUEST['is_bind']);
$tencent_id = $json_data['data']['openid'];
$msg['field'] = 'tencent_id';
$msg['id'] = $tencent_id;
$msg['name'] = $json_data['data']['name'];
es_session::set("api_user_info", $msg);
$user_data = $GLOBALS['db']->getRow("select * from " . DB_PREFIX . "user where tencent_id = '" . $tencent_id . "' and tencent_id <> ''");
if ($user_data) {
$user_current_group = $GLOBALS['db']->getRow("select * from " . DB_PREFIX . "user_group where id = " . intval($user_data['group_id']));
$user_group = $GLOBALS['db']->getRow("select * from " . DB_PREFIX . "user_group where score <=" . intval($user_data['score']) . " order by score desc");
if ($user_current_group['score'] < $user_group['score']) {
$user_data['group_id'] = intval($user_group['id']);
}
//$GLOBALS['db']->query("update ".DB_PREFIX."user set tencent_app_key ='".$last_key['oauth_token']."',tencent_app_secret = '".$last_key['oauth_token_secret']."', login_ip = '".get_client_ip()."',login_time= ".TIME_UTC.",group_id=".intval($user_data['group_id'])." where id =".$user_data['id']);
//$GLOBALS['db']->query("update ".DB_PREFIX."deal_cart set user_id = ".intval($user_data['id'])." where session_id = '".es_session::id()."'");
es_session::delete("api_user_info");
if ($is_bind) {
if (intval($user_data['id']) != intval($GLOBALS['user_info']['id'])) {
showErr("该帐号已经被别的会员绑定过,请直接用帐号登录", 0, url("shop", "uc_center#setweibo"));
} else {
es_session::set("user_info", $user_data);
app_redirect(url("shop", "uc_center#setweibo"));
}
} else {
es_session::set("user_info", $user_data);
app_recirect_preview();
}
} elseif ($is_bind == 1 && $GLOBALS['user_info']) {
//当有用户身份且要求绑定时
$GLOBALS['db']->query("update " . DB_PREFIX . "user set tencent_id= '" . $tencent_id . "' where id =" . $GLOBALS['user_info']['id']);
app_redirect(url("index", "uc_center#setweibo"));
} else {
$this->create_user();
//app_redirect(url("index","user#api_login"));
//.........这里部分代码省略.........