This package provides KeyPay OAuth 2.0 support for the PHP League's OAuth 2.0 Client
You can install the package via composer:
composer require healyhatman/oauth2-keypay
Usage is the same as The League's OAuth client, using \Healyhatman\OAuth2\Client\Provider\KeyPay
as the provider.
session_start();
$provider = new \Healyhatman\Oauth2\Client\Provider\KeyPay([
'clientId' => '{your KeyPay client ID}',
'clientSecret' => '{your KeyPay client secret}',
'clientId' => '{your KeyPay redirect URI}'
]);
if (!isset($_GET['code'])) {
// If we don't have an authorization code then get one
$authUrl = $provider->getAuthorizationUrl(['scope' => '']);
$_SESSION['oauth2state'] = $provider->getState();
header('Location: ' . $authUrl);
exit;
// Check given state against previously stored one to mitigate CSRF attack
} elseif (empty($_GET['state']) || ($_GET['state'] !== $_SESSION['oauth2state'])) {
unset($_SESSION['oauth2state']);
exit('Invalid state');
} else {
// Try to get an access token (using the authorization code grant)
$token = $provider->getAccessToken('authorization_code', [
'code' => $_GET['code']
]);
}
You can then store the token to make requests
$newAccessToken = $provider->getAccessToken('refresh_token', [
'refresh_token' => $access->refresh_token
]);
I haven't made anything for that yet. One day! Maybe.
Please see CONTRIBUTING for details.
Please review our security policy on how to report security vulnerabilities.
The MIT License (MIT). Please see License File for more information.