1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071 |
- <?php
- /**
- * Created by PhpStorm.
- * User: shensong
- * Date: 2021/5/13
- * Time: 13:43
- */
- namespace App\Services;
- use App\Log;
- use App\Models\UserAuthorization;
- class UserAuthorizeService
- {
- public static function requestToken($authCode)
- {
- $params['authorization_code'] = $authCode;
- $params['grant_type'] = 'authorization_code';
- $result = self::getToken($params);
- if(0 == $result['code']) {
- $result['data']['auth_code'] = $authCode;
- $res = UserAuthorization::inserOrUpdate(0, $result['data']);
- if($res) {
- return true;
- }
- }
- return false;
- }
- public static function refreshToken($id, $refreshToken)
- {
- $params['grant_type'] = 'refresh_token';
- $params['refresh_token'] = $refreshToken;
- $result = self::getToken($params);
- if(0 == $result['code']) {
- $res = UserAuthorization::inserOrUpdate($id, $result['data']);
- if($res) {
- return true;
- }
- }
- return false;
- }
- public static function getToken($params)
- {
- $route = '/oauth/token?';
- $clientConfig = config('client');
- $url = $clientConfig['request_url'] . $route;
- $params['client_id'] = $clientConfig['client_id'];
- $params['client_secret'] = $clientConfig['client_secret'];
- $params['redirect_uri'] = $clientConfig['redirect_uri'];
- $url = $url.http_build_query($params);
- $result = HttpService::httpGet($url);
- $result = json_decode($result, 1);
- if(0 == $result['code']) {
- Log::logInfo(json_encode($result), $params, 'token-success');
- } else {
- Log::logError(json_encode($result), $params, 'token-error');
- }
- return $result;
- }
- }
|