AuthBucket\OAuth2\Tests\TestBundle\Controller\DemoController::grantTypeRefreshTokenAction PHP Метод

grantTypeRefreshTokenAction() публичный Метод

public grantTypeRefreshTokenAction ( Request $request, Silex\Application $app )
$request Symfony\Component\HttpFoundation\Request
$app Silex\Application
    public function grantTypeRefreshTokenAction(Request $request, Application $app)
    {
        $parameters = ['grant_type' => 'refresh_token', 'refresh_token' => $request->query->get('refresh_token')];
        $server = ['PHP_AUTH_USER' => $request->query->get('username'), 'PHP_AUTH_PW' => $request->query->get('password')];
        $client = new Client($app);
        $crawler = $client->request('POST', '/api/oauth2/token', $parameters, [], $server);
        $accessTokenResponse = json_decode($client->getResponse()->getContent(), true);
        $accessTokenRequest = get_object_vars($client->getRequest());
        $modelPath = $app['url_generator']->generate('demo_resource_type_model', ['access_token' => $accessTokenResponse['access_token']]);
        $debugPath = $app['url_generator']->generate('demo_resource_type_debug_endpoint', ['access_token' => $accessTokenResponse['access_token']]);
        $refreshPath = $app['url_generator']->generate('demo_grant_type_refresh_token', ['username' => $request->query->get('username'), 'password' => $request->query->get('password'), 'refresh_token' => $accessTokenResponse['refresh_token']]);
        return $app['twig']->render('demo/grant_type/refresh_token.html.twig', ['access_token_response' => $accessTokenResponse, 'access_token_request' => $accessTokenRequest, 'model_path' => $modelPath, 'debug_path' => $debugPath, 'refresh_path' => $refreshPath]);
    }