0

シェル アプリケーションが動作しており、何かが発生する前にユーザーがログインしていることを確認したいと考えています。動作中の認証コントローラーと関連するデータベース テーブルなどがあります。

これを行う最善の方法は、各コントローラーで ID をチェックしたくないため、ID テストをブートストラップに入れることだと思いました。基本的に、私はブートストラップにコードを入れたいと思っています。これはZendでそれを行う最良の方法ですか? そうでない場合、推奨される方法は何ですか?

ユーザーがログインしている場合は、あらゆるタイプのすべてのリクエストに対して許可したくないため、ブートストラップを考えていました。もちろん、このチェックを特定の場所でのみ行うのが最善です。

4

1 に答える 1

1

私はこれがプラグインを介して行われるのをより一般的に見ました。これらは、Zendアプリケーションのディスパッチサイクルのさまざまな段階で実行できます。私が遭遇した最も一般的な設定は、preDispatchにユーザーログインステータスのチェックプラグインを配置することです。

ZendのドキュメントでpreDispatchプラグインを検索するか、Youtubeをご覧ください。優れたビデオチュートリアルがいくつかあります。

これを行うことの利点は、将来、ユーザー認証テストの前に何らかの機能を実行したい場合があることです。このような場合、dispatchLoopStartupプラグインに新しい機能を追加できます。

そうは言っても、ブートストラップでユーザーのログインステータスをチェックすることに何の問題もありません。これは何度も行われています。プラグインは新しいアプリケーションでより再現性が高いため、ユーザープラグインの方が適切である可能性があります。

もちろんこれは私の意見ですが、これがお役に立てば幸いです。

于 2012-09-09T19:22:52.333 に答える