1

ajax を使用してユーザーを追加するアプリケーションがあります。ログインしたいのですが、他のフォームを送信できるようにリダイレクトしたくありません。これは可能ですか?ドキュメントを検索しましたが、リダイレクトしないようにするものは何も見つかりませんでした。リダイレクトを変更できるのを見ましたが、リダイレクトしないようにするにはどうすればよいですか? 現在のページにリダイレクトしようとしても、err_too_many_redirects が発生し続けます。

4

3 に答える 3

2

認証コンポーネントを次のように構成します。

$this->loadComponent('Auth', [
        'loginRedirect' => false
    ]);
于 2015-10-15T10:51:37.517 に答える
0

Nguyễn Anh Tuấn の回答を使用してこれを機能させましたが、他の誰かがこの問題に遭遇した場合に備えて、AppController だけでなく、サブコントローラー内でこれを行う方法を追加する価値があるかもしれません。

(指摘しておくと、認証コンポーネントをロードして、ここに示すように別のコントローラーで構成を設定できますが、代わりに構成オプションを設定することもできます。)

'loginRedirect' => false を AppController に追加し、ユーザーが許可されていないページにアクセスしようとすると、「警告 (2): 不正な文字列オフセット '_base' [CORE\src\Controller\Component\ AuthComponent.php、408行目]。

リダイレクトが AppController に設定されている場合、ユーザーがそれらのページにアクセスしようとしても何も起こりません (現在のページにとどまります)。

それで、ドキュメントを調べたところ、これが見つかりまし

行を追加しただけです

$this->Auth->config('loginRedirect', false);

初期化メソッドでユーザーコントローラーに接続すると、機能しました。

于 2015-10-18T02:50:00.583 に答える