Download the PHP package fotografde/oauth-client without Composer
On this page you can find all versions of the php package fotografde/oauth-client. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download fotografde/oauth-client
More information about fotografde/oauth-client
Files in fotografde/oauth-client
Package oauth-client
Short Description Oauth fde client provider for usage with oauth-server
License MIT
Informations about the package oauth-client
Getphoto Provider for OAuth 2.0 Client
This package provides Getphoto OAuth 2.0 support for the PHP League's OAuth 2.0 Client.
Installation
To install, use composer:
Usage
! NOTE ! For common use case with caching check Caching tokens
Usage is the same as The League's OAuth client, using \Getphoto\Oauth2\OauthProvider
as the provider.
Simple frontend client app using Getphoto\oauth-client
with different grant types implemented can be found here
Client credentials grant
Password grant
Password Ftp grant
Authorization code grant
For more detailed description about this grants and use cases please read core package documentation.
Getting the resource owner data
There is a convinient way to get resource owner data (user data) using ResourceOwner
class:
Caching Tokens
From several use cases we've seen that caching token logic is common and really similar. This is why this package now provides convenient method for caching tokens - getAccessTokenSmart
(which also does one additional fallback call if token fetch fails and loggs errors)
OauthProvider Constructor options
Via constructor you can set new options:
cacheOn
bool - wheather to use cache or not in getAccessTokenSmart (default is true)cacheSafeInterval
float - how many minutes before expiration to renew token (default is 5)cachePrefix
string - important to set if using provider across same system but different use case (default is '')
And also additional collaborators:
logger
- instance of a logging class that implements Loggercacher
- instance of a caching class that implements Cacher
getAccessTokenSmart method
Same args as in getAccessToken
with additional options so you can override options set in constructor (just for this call) - cacheOn
, cacheSafeInterval
, cachePrefix
.
clearTokenCache method
Use this method when you want to forget cached token. With $prefix
(for which to clear tokens) param you can override constructor setting for this call.
Example usage of getAccessTokenSmart:
Here is example usage from our core system which calls oauth server to sync user changes:
1. Constructing provider:
2. Getting token:
3. Calling protected API and clearing token cache if invalid token
NOTE: For example of session implementation of CacherInterface check Oauth lib in core system. And usage in Jobs plugin ApiComponent
Logout
There is a logout method now to expire the token, you should implement it in your logout flow to save some resources on our authentication server: