This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License.
This Package can be used to connect to an OAuth2-Service and fetch OAuth2 restricted resources.
Update your composer.json
"require"-Section with this line:
"advanced-store/oauth2-client": "dev-master"
After adding this line, run the following command:
composer install
or
composer update
You need to publish the configuration file of this package with:
php artisan config:publish advanced-store/oauth2-client
The Config-File path is app/config/advanced-store/oauth2-client/config.php
Here you have to add/modify the values for your purpose.
[client.id] - Client-ID of your Application
[client.secret] - Client-Secret of your Application
[scopes] - Scopes for your Application (comma separated)
After modifying the Package-Config, update the app/config/app.php
Modify your providers and aliases section, with your preferred alias:
<code><b>'providers' => array('AdvancedStore\Oauth2Client\Oauth2ClientServiceProvider')</b></code>
<br>
<code><b>'aliases' => array('OAuth2Client' => 'AdvancedStore\Oauth2Client\Facades\Oauth2ClientFacade')</b></code>
OAuth2Client::fetchAccessToken('http://3rd.party.com/api/access_token', 'password', array(
'username' => $credentials['username'],
'password' => $credentials['password'],
'scope' => Config::get('oauth2-client::scopes'),
));
$result = OAuth2Client::fetch('http://3rd.party.com/api/restriced/resource');
- AUTH_TYPE_URI
- AUTH_TYPE_AUTHORIZATION_BASIC
- AUTH_TYPE_FORM
- ACCESS_TOKEN_URI
- ACCESS_TOKEN_BEARER
- ACCESS_TOKEN_OAUTH
- ACCESS_TOKEN_MAC
- GRANT_TYPE_AUTH_CODE
- GRANT_TYPE_PASSWORD
- GRANT_TYPE_CLIENT_CREDENTIALS
- GRANT_TYPE_REFRESH_TOKEN
- HTTP_METHOD_GET
- HTTP_METHOD_POST
- HTTP_METHOD_PUT
- HTTP_METHOD_DELETE
- HTTP_METHOD_HEAD
- HTTP_METHOD_PATCH
- HTTP_FORM_CONTENT_TYPE_APPLICATION
- HTTP_FORM_CONTENT_TYPE_MULTIPART