class AuthTokenMiddleware (View source)

AuthTokenMiddleware is a Guzzle Middleware that adds an Authorization header provided by an object implementing FetchAuthTokenInterface.

The FetchAuthTokenInterface#fetchAuthToken is used to obtain a hash; one of the values value in that hash is added as the authorization header.

Requests will be accessed with the authorization header:

'authorization' 'Bearer '

Methods

__construct(FetchAuthTokenInterface $fetcher, callable $httpHandler = null, callable $tokenCallback = null)

Creates a new AuthTokenMiddleware.

__invoke(callable $handler)

Updates the request with an Authorization header when auth is 'google_auth'.

Details

__construct(FetchAuthTokenInterface $fetcher, callable $httpHandler = null, callable $tokenCallback = null)

Creates a new AuthTokenMiddleware.

Parameters

FetchAuthTokenInterface $fetcher is used to fetch the auth token
callable $httpHandler (optional) callback which delivers psr7 request
callable $tokenCallback (optional) function to be called when a new token is fetched.

Closure __invoke(callable $handler)

Updates the request with an Authorization header when auth is 'google_auth'.

use Google\Auth\Middleware\AuthTokenMiddleware; use Google\Auth\OAuth2; use GuzzleHttp\Client; use GuzzleHttp\HandlerStack;

$config = [...]; $oauth2 = new OAuth2($config) $middleware = new AuthTokenMiddleware($oauth2); $stack = HandlerStack::create(); $stack->push($middleware);

$client = new Client([ 'handler' => $stack, 'base_uri' => 'https://www.googleapis.com/taskqueue/v1beta2/projects/', 'auth' => 'google_auth' // authorize all requests ]);

$res = $client->get('myproject/taskqueues/myqueue');

Parameters

callable $handler

Return Value

Closure