0
パスワード変更依頼時にリスニングイベントに問題があります。ここでFOSユーザーパスワード変更イベントリスナー
はリスナー
public function __construct(
UrlGeneratorInterface $router,
Session $session,
TokenStorageInterface $tokenStorage
) {
$this->router = $router;
$this->session = $session;
$this->tokenStorage = $tokenStorage;
}
public static function getSubscribedEvents()
{
return [
FOSUserEvents::CHANGE_PASSWORD_SUCCESS => [
['onChangePasswordSuccess', +10000]
],
];
}
public function onChangePasswordSuccess(GetResponseUserEvent $event)
{
$this->tokenStorage->setToken(); // logout user
$this->session->invalidate();
$event->setResponse(new RedirectResponse($this->router->generate('fos_user_security_login')));
}
である。しかし何も起こりません。私はデバッガのブレークポイントを$ this-> tokenStorage-> setToken()に置くが、それは止まらなかった。 誰かがなぜこれが動作しないのか理解してもらえますか?
このリスナーを 'services.yml'に登録しましたか?あなたはそれの設定を表示できますか? –
CoreBundle \ EventListener \ ChangePasswordListener: タグ: - {name:kernel.event_subscriber} まず、これを入れても機能しませんでした。私はautowireを使っているので削除しましたが、うまくいきませんでした。 –
あなたのサービス構成内にこのようなものを追加してくださいね。https://gist.github.com/kaduev13/b569ed0d53af70a4bc697bf7ee88c8bc –