我有以下LoginEventlistener:
public function onSecurityInteractiveLogin(InteractiveLoginEvent $event) {
if ($this->securityContext->isGranted('IS_AUTHENTICATED_FULLY')) {
// user has just logged in
if ($this->session->has('user_media_savings')) {
//some code
}
$referer_url = $this->container->get('request')->headers->get('referer');
$response = new RedirectResponse($referer_url);
}
return $response;
}
如果我要打电话给受保护的网站,例如www.example.com/secured/index当然symfony2重定向到登录页面。如果我现在登录引用者的输出是登录路由而不是www.example.com/secured/index。
有什么问题?
答案 0 :(得分:0)
如果在重定向到登录操作的地方设置_security.main.target_path
,防火墙将处理重定向到该特定路由本身。
$redirectUrl = $this->get('router')->generate('account', array(), true)
$this->get('session')->set('_security.main.target_path', $redirectUrl);
return $this->redirectToRoute('login');