mhndev / oauth-client
php open authentication server sdk
2.18.0
2018-10-07 15:31 UTC
Requires
- php: >=7.0
- ext-json: *
- guzzlehttp/guzzle: 6.*
- mhndev/php-std: 1.*
- mhndev/value-objects: 1.*
Requires (Dev)
- mikey179/vfsstream: 1.3.*
- phpunit/phpunit: 7.*
Suggests
- ext-PDO: *
- ext-sqlite3: *
- 2.18.0
- 2.17.0
- 2.16.0
- 2.15.1
- 2.15.0
- 2.14.3
- 2.14.2
- 2.14.1
- 2.14.0
- 2.13.0
- 2.12.0
- 2.11.3
- 2.11.2
- 2.11.1
- 2.11.0
- 2.10.0
- 2.9.1
- 2.9.0
- 2.8.0
- 2.7.0
- 2.6.0
- 2.5.0
- 2.4.0
- 2.3.4
- 2.3.3
- 2.3.2
- 2.3.1
- 2.3.0
- 2.2.0
- 2.1.1
- 2.1.0
- 2.0.3
- 2.0.2
- 2.0.1
- 2.0.0
- 1.8.1
- 1.8.0
- 1.7.0
- 1.6.0
- 1.5.1
- 1.5.0
- 1.4.2
- 1.4.1
- 1.3.2
- 1.3.1
- 1.3.0
- 1.2.0
- 1.1.2
- 1.1.1
- 1.1.0
- 1.0.0
This package is auto-updated.
Last update: 2024-10-08 06:52:10 UTC
README
tokens table structure :
CREATE TABLE tokens (
client_id TEXT NOT NULL PRIMARY KEY,
client_secret TEXT NOT NULL,
credentials TEXT NOT NULL,
type TEXT NOT NULL,
expires_at datetime
);
<?php ini_set('display_errors', 1); ini_set('display_startup_errors', 1); error_reporting(E_ALL); require_once 'vendor/autoload.php'; $client_id = 1; $client_secret = 'DONjJxACnkVqzHPoHOoUmfEmUjnDnXJiT0PuqCzO'; $tokenRepository = new \mhndev\oauthClient\repository\TokenRepositorySqlite( (new \mhndev\oauthClient\SqLiteConnection(__DIR__.DIRECTORY_SEPARATOR.'db.sqlite'))->connect() ); $guzzleClient = new \GuzzleHttp\Client(); $guzzleHandler = new \mhndev\oauthClient\handlers\GuzzleHandler( $guzzleClient, 'http://dev.digipeyk.com:8030' ); // if you want to pass api ednpoints and you are not going to use default endpoints please pass the third argument as follow: // consider you can just override as many endpoint as you want, and you are not forced to override all endpoints $guzzleHandler = new \mhndev\oauthClient\handlers\GuzzleHandler( $guzzleClient, 'http://dev.digipeyk.com:8030', ['removeIdentifier' => '/api/removeUserIdentifier'] ); $oauth_client = new \mhndev\oauthClient\Client($guzzleHandler, $tokenRepository); $token = $oauth_client->getClientToken($client_id, $client_secret); //register endpoint $user_register = $oauth_client->register( 'hamid', '123456', ['email'=>'ma2jid8911303@gmail.com'], $token ); var_dump($user_register); // whois endpoint $user_whoIs = $oauth_client->getWhois( 'email', 'majid8911303@gmail.com', $token ); var_dump($user_whoIs); // get Token Info $tokenValueObject = new \mhndev\valueObjects\implementations\Token( $token->getCredentials(), $token->getType() ); $tokenInfo = $oauth_client->getTokenInfo($tokenValueObject); var_dump($tokenInfo); echo '<br><br><br><br><br>'; // now using mock handler instead as handler $mockHandler = new \mhndev\oauthClient\handlers\MockHandler(); $oauth_client2 = new \mhndev\oauthClient\Client($mockHandler, $tokenRepository); $tokenFromMock = $oauth_client2->getClientToken('wefwergderf', 'werwrgfer'); var_dump($tokenFromMock); $result = $oauth_client2->register( 'majid', '123456', ['email' => 'majid@gmail.com'], new \mhndev\oauthClient\entity\common\Token( 'Bearer', '34r3t354t54tr', $client_id, $client_secret ) ); var_dump($result);
todo : toArray for oauth objects