12345678910111213141516171819202122232425262728293031323334353637383940 |
- <?php
- namespace FTTHBundle\Factory;
- use Buzz\Message\RequestInterface as HttpRequestInterface;
- class TokenFactory
- {
- public static function create($baseUrl, $ws){
- if(!is_null($baseUrl)){
- $endpointToken = $baseUrl."/oauth/v2/token";
- $params = [
- 'client_id' => getenv('OAUTH_CLIENT_ID'),
- 'client_secret' => getenv('OAUTH_CLIENT_SECRET'),
- 'grant_type' => 'client_credentials'
- ];
- try {
- $requestToken = $ws->makeRequest($endpointToken, HttpRequestInterface::METHOD_POST, $params);
- $token = json_decode($requestToken, true);
- $headers = [
- 'Authorization' => "Bearer {$token['access_token']}",
- 'ClientId' => $params['client_id'],
- 'ClientSecret' => $params['client_secret'],
- 'Microservice' => 1,
- 'Content-Type' => 'application/x-www-form-urlencoded'
- ];
- return $headers;
- } catch (\Exception $ex) {
- throw new \Exception($ex->getMessage());
- }
- }
- return null;
- }
- }
|