我在我的项目中使用Symfony2和FOSUser包实现了ajax登录,以便用户可以通过模式窗口登录(使用AJAX并构建我自己的处理程序)。
我现在想做同样的事情但是要注册。我希望新用户通过模态窗口注册并通过AJAX激活注册处理程序。
我找不到要继承的注册处理程序... 这可能吗?有什么想法吗?
由于
答案 0 :(得分:0)
您必须实现一个身份验证处理程序类,以便在身份验证成功的情况下将您重定向到您想要的位置。
services.yml
parameters:
authentication_handler_class: Namespace\authenticationHandlerClass
services:
authentication_handler:
class: %authentication_handler_class%
arguments: [@router]
tags:
- { name: 'monolog.logger', channel: 'security' }
authenticationHandlerClass
<?php
use Symfony\Component\HttpFoundation\RedirectResponse;
use Symfony\Bundle\FrameworkBundle\Routing\Router;
use Symfony\Component\Security\Core\Authentication\Token\TokenInterface;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\Security\Http\Authentication\AuthenticationSuccessHandlerInterface;
class AuthenticationHandler implements AuthenticationSuccessHandlerInterface
{
private $router;
public function __construct(Router $router)
{
$this->router = $router;
}
public function onAuthenticationSuccess(Request $request, TokenInterface $token)
{
$url = $this->router->generate('nameofmyroute');
return new RedirectResponse($url);
}
}