protected function AuthenticationController::getAuthorizationCode in Janrain Registration 8
Returns the authorization code.
Parameters
\Symfony\Component\HttpFoundation\Request $request: The current request.
Return value
string The OAuth authorization code.
1 call to AuthenticationController::getAuthorizationCode()
- AuthenticationController::login in src/Controller/ AuthenticationController.php 
- Login or reset a password for a user using Janrain API.
File
- src/Controller/ AuthenticationController.php, line 174 
Class
- AuthenticationController
- Authentication controller.
Namespace
Drupal\janrain_capture\ControllerCode
protected function getAuthorizationCode(Request $request) : string {
  // If the request has no "code" it means it's malformed.
  if (!$request->query
    ->has('code')) {
    throw new BadRequestHttpException($this
      ->t('Malformed request. Authorization code is missing.'));
  }
  $code = $request->query
    ->get('code');
  // The code must be read first and then removed from the request. This
  // is required for an operation, for instance, for resetting the password.
  // The link that user will get via email will look the following:
  // https://a.com/janrain_capture/oauth?url_type=forgot&code=8uy9j8quyj3tam
  // The Janrain will expect "redirect_uri" without the "code":
  // https://a.com/janrain_capture/oauth?url_type=forgot
  // If the domain will differ, OAuth will throw the "redirect_uri does not
  // match expected value" error.
  $request->query
    ->remove('code');
  // Override global variables to ensure the "code" is no longer presented.
  $request
    ->overrideGlobals();
  // Return ejected value.
  return $code;
}