Next Engine Provider for OAuth 2.0 Client
, (*1)
This package provides Resource Next Engine OAuth 2.0 support for the PHP League’s OAuth 2.0 Client., (*2)
Installation
To install, use composer:, (*3)
composer require w-takumi/oauth2-next-engine
Usage
Usage is the same as The League’s OAuth client, using \Shippinno\NextEngine\OAuth2\Client\Provider\NextEngineProvider as the provider., (*4)
Authorization Code Flow
<?php
$provider = new \Shippinno\NextEngine\OAuth2\Client\Provider\NextEngineProvider([
'clientId' => '{next-engine-client-id}',
'clientSecret' => '{next-engine-lient-secret}',
'redirectUri' => 'https://example.com/callback',
]);
if (!isset($_GET['uid']) || !isset($_GET['state'])) {
$authUrl = $provider->getAuthorizationUrl();
header('Location: '.$authUrl);
exit;
} else {
$token = $nextEngineProvider->getAccessToken('client_credentials', [
'uid' => $_GET['uid'],
'state' => $_GET['state']
]);
try {
$user = $provider->getResourceOwner($token);
printf('Hello %s!', $user->getCompanyName());
} catch (Exception $e) {
exit('Oh dear...');
}
echo $token->getToken();
}