FosUserBundle выдает себя за внешность - PullRequest
0 голосов
/ 27 марта 2019

Я пытаюсь выдать себя за внешнюю ссылку. Например https://example.com/?_switch_user=email. Таким образом, при нажатии на кнопку он будет перенаправлять пользователя и немедленно олицетворять. Это отлично работает. Проблема в том, что когда я пытаюсь выдать себя за нового пользователя, это приводит к ошибке 500. Как и следовало ожидать, потому что есть активное подражание. У меня вопрос: можно ли сначала запустить https://example.com/?_switch_user=_exit в фоновом режиме, а затем перенаправить на нового пользователя извне.

Это мой код:

/**
 * @Route("/admin/client/{email}", name="client-impersonate")
 */
public function impersonate($email)
{
    // first run someting to exit the active impersonation and then redirect below

    return $this->redirect('https://example.com/?_switch_user='.$email);
}

Мое решение для резервного копирования будет состоять в том, чтобы создать своего рода слушателя на example.com, чтобы сначала проверить, есть ли активное олицетворение, и сначала «выйти». Но мне было интересно, смогу ли я сделать это также с кодом выше. (до перенаправления)

...