1

認証ハンドラーを作成しましたが、ユーザーが認証に成功するとすべてが正常に機能します...しかし、失敗した場合、失敗エラーをフォームに返して表示する方法がわかりません。

public function onAuthenticationFailure(Request $request, AuthenticationException $exception)
{
}

$exception を渡してフォームにリダイレクトする方法がわからないため、関数はどのように見えるべきですか。

4

1 に答える 1

1

おそらく、ユーザーにメッセージを表示したいと思うでしょう。フラッシュ メッセージを表示して、ユーザーをリダイレクトできます。

$request->getSession()->setFlash('error', $exception->getMessage());

FosUserBundle を見ると、テンプレートに直接メッセージが表示されます

https://github.com/FriendsOfSymfony/FOSUserBundle/blob/master/Resources/views/Security/login.html.twig

https://github.com/FriendsOfSymfony/FOSUserBundle/blob/master/Controller/SecurityController.php

お役に立てば幸いです

宜しくお願いします

于 2013-06-27T13:56:27.307 に答える