/** * 返回QqeimApi单例对象 * @return QqeimApi */ public static function api() { if (empty(self::$_api)) { self::$_api = new QqeimApi(OpenConfig::APPID, OpenConfig::APPSECRET); } return self::$_api; }
<?php require './lib.php'; if (OpenConfig::APPID == '' || OpenConfig::APPSECRET == '' || OpenConfig::COMPANY_CALLBACK_URL == '' || OpenConfig::USER_CALLBACK_URL == '') { header("Content-type: text/html; charset=utf-8"); echo '请先修改OpenConfig文件,填好APPID, APPSECRET, COMPANY_CALLBACK_URL, USER_CALLBACK_URL~有不理解之处请查看<a href="http://wiki.open.b.qq.com/api:start#api%E8%B0%83%E7%94%A8%E8%8C%83%E4%BE%8B%E4%BB%A3%E7%A0%81">开放平台示例使用说明.pptx</a>'; exit; } $url = OpenHelper::oauthUser()->getAuthorizeUrl(); ?> <!DOCTYPE html> <html> <head> <title>企业QQ开放平台示例APP</title> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width"> <link rel="stylesheet" type="text/css" href="./cloud/assets/css/testapicss.css" /> </head> <body> <div class="banner"> <a class="btn-brand" style="vertical-align:middle;" href='http://wiki.open.b.qq.com/start' target="_blank" title="API文档">企业QQ开放平台</a> <?php if (TestUser::user()->isLogin()) { ?> <label for="openid">当前登录open_id:</label> <span><?php echo TestUser::user()->id(); ?> </span> <label for="companyid" >company_id:</label> <span><?php
<?php require '../../../lib.php'; $openId = TestUser::user()->id(); $companyId = TestUser::user()->companyId(); $model = new CSCorpModel(); $api = OpenHelper::api(); $result = $api->getUserMobile($companyId, $model->getToken($companyId), getClientIp(), $openId); OpenUtils::outputJson($result);
<?php //员工授权回跳 require '../../lib.php'; $ret = array('ret' => 0, 'msg' => '成功'); $oauth = OpenHelper::oauthUser(); //默认会从Get参数中拿到code去获得accesstoken $result = $oauth->getAccessToken(); if ($result['ret'] == 0 && !empty($result['data'])) { //如果获取accesstoken成功,则对该用户鉴权通过,记下用户在示例app登录信息 $access_tokens = $result['data']; $openId = $access_tokens['open_id']; $companyId = ''; if (isset($access_tokens['company_id'])) { $companyId = $access_tokens['company_id']; } $model = new CSCorpModel(); $model->saveOpenId($openId, $companyId); TestUser::user()->login($openId); header('Location:../../'); } else { header('Location:../../'); }
public function refreshToken($refresh_token) { $oauth = OpenHelper::oauthCompany(); $result = $oauth->refreshAccessToken($refresh_token); if ($result['ret'] == 0) { $refresh_tokens = $result['data']; } else { $refresh_tokens = false; } return $refresh_tokens; }
<?php //sae_debug("in oath2/callback!!!!"); require '../../lib.php'; $ret = array('ret' => 0, 'msg' => '成功'); $oauth = OpenHelper::oauthCompany(); //默认会从Get参数中拿到code去获得companyToken $result = $oauth->getCompanyToken(); if (OpenConfig::SAE_MODE) { $s = new SaeStorage(); $s->upload(OpenConfig::SAE_DOMAIN, 'data.dat', '../../data.dat'); } if ($result['ret'] == 0 && !empty($result['data'])) { $company_token = $result['data']; $company_token['status'] = 0; saveToken($company_token); } else { $ret['ret'] = 1; $ret['msg'] = '失败'; } if (OpenConfig::SAE_MODE) { ini_set('display_errors', 0); sae_debug(json_encode($ret)); ini_set('display_errors', 1); } OpenUtils::outputJson($ret);