Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/mhndev/oauth-client

php oauth client (sdk)
https://github.com/mhndev/oauth-client

oauth-server oauth2 oauth2-client sdk-php

Last synced: 7 days ago
JSON representation

php oauth client (sdk)

Awesome Lists containing this project

README

        

## Php OAuth Client (Sdk)

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
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'=>'[email protected]'],
$token
);

var_dump($user_register);

// whois endpoint

$user_whoIs = $oauth_client->getWhois(
'email',
'[email protected]',
$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 '




';

// 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' => '[email protected]'],
new \mhndev\oauthClient\entity\common\Token(
'Bearer',
'34r3t354t54tr',
$client_id,
$client_secret
)
);

var_dump($result);

```

todo :
toArray for oauth objects