stuki/oauth2-simple-client
Composer 安装命令:
composer require stuki/oauth2-simple-client
包简介
A simply better OAuth2 Client
README 文档
README
This OAuth2 client is a simply better way to use OAuth2 in your application.
Included Providers
- Box
- Eventbrite
- Github
- Meetup
- Microsoft
About
This is a hard fork of ThePHPLeague/oauth-client and this is the offical repository for StukiOrg/oauth2-simple-client.
This simple client implements a well architected solution for OAuth2 authentication. Contributions are accepted for new OAuth2 adapters if you choose to share.
Installation
$ php composer.phar require stuki/oauth2-simple-client dev-master
ZF2 Example
use Stuki\OAuth2\Client; public function LoginAction() { $config = $this->getServiceLocator()->get('Config'); $provider = new Client\Provider\Meetup(array( 'clientId' => $config['meetup']['key'], 'clientSecret' => $config['meetup']['secret'], 'redirectUri' => $config['meetup']['redirect'], )); if ( ! $this->params()->fromQuery('code')) { // No authorization code; send user to get one // Some providers support and/or require an application state token return $this->plugin('redirect')->toUrl($provider->getAuthorizationUrl(array('state' => 'token'))); } else { try { // Get an authorization token $token = $provider->getAccessToken('authorization_code', [ 'code' => $_GET['code'], ]); } catch (Client\Exception\IDPException $e) { // Handle error from oauth2 server } // Store the access and refresh token for future use $container = new Container('oauth2'); $container->accessToken = $token->accessToken; $container->refreshToken = $token->refreshToken; // Redirect to save session return $this->plugin('redirect')->toRoute('member'); } }
Refresh a Token
use Stuki\OAuth2\Client; $provider = new Client\Provider\<ProviderName>(array( 'clientId' => 'id', 'clientSecret' => 'secret', 'redirectUri' => 'https://your-registered-redirect-uri/' )); $grant = new Client\Grant\RefreshToken(); $token = $provider->getAccessToken($grant, ['refresh_token' => $refreshToken]);
统计信息
- 总下载量: 71
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 1
- 点击次数: 0
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2014-05-20