|  Download ohmy-auth     ohmy-auth (Oma) is a PHP library that simplifies OAuth into a fluent interface: use ohmy\Auth1;
Auth1::legs(2)
     ->set('key', 'key')
     ->set('secret', 'secret')
     ->request('http://term.ie/oauth/example/request_token.php')
     ->access('http://term.ie/oauth/example/access_token.php')
     ->GET('http://term.ie/oauth/example/echo_api.php')
     ->then(function($data) {
         # got data
     });
 DependenciesOma only requires PHP (>= 5.3) and the usual extensions for Curl (`curl_init()`,`curl_setopt()`, etc), JSON (`json_encode()`,`json_decode()`) and sessions (`session_start()`,`session_destroy()`). Installing with ComposerThe best way to install Oma is via Composer. Just add `ohmy/auth`to your project's`composer.json`and run`composer install`. eg: {
    "require": {
        "ohmy/auth": "*"
    }
}
 Installing manuallyIf you prefer not to use Composer, you can download an archive or clone this repo and put `src/ohmy`into your project setup. Two-Legged OAuth 1.0ause ohmy\Auth1;
# do 2-legged oauth
$termie = Auth1::legs(2)
               # configuration
               ->set('key', 'key')
               ->set('secret', 'secret')
               # oauth flow
               ->request('http://term.ie/oauth/example/request_token.php')
               ->access('http://term.ie/oauth/example/access_token.php');
# api call
$termie->GET('http://term.ie/oauth/example/echo_api.php')
       ->then(function($data) {
           # got data
       });
 Three-Legged OAuth 1.0aNote: This requires sessions in order to save data between redirects. This will not work properly without sessions! use ohmy\Auth1;
# do 3-legged oauth
$tumblr = Auth1::legs(3)
               # configuration
               ->set(array(
                    'consumer_key'    => 'your_consumer_key',
                    'consumer_secret' => 'your_consumer_secret',
                    'callback'        => 'your_callback_url'
               ))
               # oauth flow
               ->request('http://www.tumblr.com/oauth/request_token')
               ->authorize('http://www.tumblr.com/oauth/authorize')
               ->access('http://www.tumblr.com/oauth/access_token');
# access tumblr api      
$tumblr->GET('https://api.tumblr.com/v2/user/info')
       ->then(function($data) {
           # got user data
       });
 Three-Legged OAuth 2.0use ohmy\Auth2;
# do 3-legged oauth
$github = Auth2::legs(3)
               # configuration
               ->set(array(
                    'id'       => 'your_github_client_id',
                    'secret'   => 'your_github_client_secret',
                    'redirect' => 'your_redirect_uri'
               ))
               # oauth flow
               ->authorize('https://github.com/login/oauth/authorize')
               ->access('https://github.com/login/oauth/access_token')
               ->finally(function($data) use(&$access_token) {
                   $access_token = $data['access_token'];
               });
# access github api
$github->GET("https://api.github.com/user?access_token=$access_token", null, array('User-Agent' => 'ohmy-auth'))
       ->then(function($data) {
           # got user data
       });
 More examples - Facebook
 - Fitbit
 - GitHub
 - Google+
 - Instagram
 - LinkedIn
 - Live
 - Tumblr
 - Twitter
 - Yahoo Licenses - __PHP license__: PHP License
 - __ohmy-auth__: New BSD License. |