Authorize users with your application using multiple OAuth 1 and OAuth 2 providers.
OAuth is split into two sections, clients and providers. A client is an application - perhaps a basic Twitter feed aggregator - which authenticates with an OAuth provider, which in this example would be Twitter itself. You can interact with any provider which is supported in the list below:
- Appnet
- Dropbox
- Flickr
- Foursquare
- GitHub
- Mailchimp
- Mailru
- PayPal
- Soundcloud
- Tumblr
- Vkontakte
- Windows Live
- Yandex
- YouTube
In this example we will authenticate the user using Twitter.
$provider = \OAuth\OAuth::provider('Twitter', array(
'id' => 'CLIENT_ID',
'secret' => 'CLIENT_SECRET',
'redirect_url' => 'URL_TO_THIS_PAGE'
));
$oauth = $provider->process(function($url, $token = null) {
if ($token) {
session_start();
$_SESSION['token'] = base64_encode(serialize($token));
}
header("Location: {$url}");
exit;
}, function() {
session_start();
return unserialize(base64_decode($_SESSION['token']));
});
print_r($oauth->getUserInfo());
If all goes well you should see a dump of user data.
- Check for open issues or open a new issue for a feature request or a bug
- Fork the repository on Github to start making your changes to the
develop
branch (or branch off of it) - Write a test which shows that the bug was fixed or that the feature works as expected
- Send a pull request and bug me until I merge it