Heroku Provider for OAuth 2.0 Client
, (*1)
This package provides Heroku OAuth 2.0 support for the PHP League's OAuth 2.0 Client., (*2)
Installation
To install, use composer:, (*3)
composer require stevenmaguire/oauth2-heroku
Usage
Usage is the same as The League's OAuth client, using \Stevenmaguire\OAuth2\Client\Provider\Heroku
as the provider., (*4)
Authorization Code Flow
$provider = new Stevenmaguire\OAuth2\Client\Provider\Heroku([
'clientId' => '{heroku-client-id}',
'clientSecret' => '{heroku-client-secret}',
'redirectUri' => 'https://example.com/callback-url'
]);
For further usage of this package please refer to the core package documentation on "Authorization Code Grant"., (*5)
Refreshing a Token
Once your application is authorized, you can refresh an expired token using a refresh token rather than going through the entire process of obtaining a brand new token. To do so, simply reuse this refresh token from your data store to request a refresh., (*6)
$existingAccessToken = getAccessTokenFromYourDataStore();
if ($existingAccessToken->hasExpired()) {
$newAccessToken = $provider->getAccessToken('refresh_token', [
'refresh_token' => $existingAccessToken->getRefreshToken()
]);
// Purge old access token and store new access token to your data store.
}
For further usage of this package please refer to the core package documentation on "Refreshing a Token"., (*7)
Testing
bash
$ ./vendor/bin/phpunit
, (*8)
Contributing
Please see CONTRIBUTING for details., (*9)
Credits
License
The MIT License (MIT). Please see License File for more information., (*10)