shippinno / oauth2-next-engine
为 PHP League OAuth2-Client 提供的 Next Engine OAuth 2.0 客户端提供程序
0.0.1
2017-06-07 15:38 UTC
Requires
- php: >=5.6.0
- league/oauth2-client: ^2.2
Requires (Dev)
- mockery/mockery: ^0.9.9
- phpunit/phpunit: ^5.7
This package is not auto-updated.
Last update: 2024-09-20 19:35:15 UTC
README
本包为 PHP League 的 OAuth 2.0 客户端 提供了 Next Engine OAuth 2.0 支持。
安装
要安装,请使用 composer
composer require w-takumi/oauth2-next-engine
用法
用法与 The League 的 OAuth 客户端相同,使用 \Shippinno\NextEngine\OAuth2\Client\Provider\NextEngineProvider
作为提供者。
授权码流
<?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(); }