artdarek / oauth-4-laravel

OAuth Service Provider for Laravel 4

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Refresh Token Google Example

winni4eva opened this issue · comments

I have been trying request for a new token from Google using my stored refresh token without success. Is there an example of how to go about this? Any help will be appreciated. Thanks.

Found a solution finally..

private function createServiceObject($access_token, $refresh_token){

            $token_interface = new StdOAuth2Token($access_token, $refresh_token);
            OAuth::setHttpClient('CurlClient');
            $googleService = OAuth::consumer( 'Google' );

            if($token_interface->getEndOfLife() < time()){
                $token = $googleService->refreshAccessToken($token_interface);

                //Get access token
                $accessToken = $token->getAccessToken();

                //Store token
                $googleService->getStorage()->storeAccessToken('Google', $token_interface);

                //Save new access token

                return $googleService;
            }else{
                $googleService->getStorage()->storeAccessToken('Google', $token_interface);
                return $googleService;
            }
}