これは比較的一般的な問題であるはずですが、フロントエンドとバックエンドを扱う場合、ユーザーがログインしているかどうかを判断するためにセッションが存在するかどうかを判断する必要があります。
しかし、ドキュメントで見た方法では、各ページで 1 回だけ判定を導入し、その後は他の操作を実行できるということですが、この問題に対処するもっと簡単な方法があるはずです。本当にわかりません。自分で解決してください。誰かに聞いてください。助けてください!
重要なのは、一度設定してから、次の操作を容易にするために、指定したディレクトリ内のすべてのページにログインするかどうかを決定させる方法です。
最初のタイプの参照アクセス: すべてのセッションの判断と検証をクラスに記述します。各コントローラーにプリコントローラーメソッドまたは初期化コントロールを作成し、メソッド内でセッションクラスのログイン認証メソッドを直接参照します。
2 番目の種類の継承: 各コントローラーはセッション検証クラスを継承します。そのため、コントローラーがアクセスされるたびに、セッションのすべてのクラスとメソッドが継承され、セッション クラスに初期化コントロールがログイン検証として設定されます。セッション
個人的には 2 番目のオプションをお勧めします。各コントローラーでコントローラーを初期化する必要がなく、コードが削減され、メンテナンスが容易になるためです。
それを実装するには、次のように
そのうち、Base.php
,通过其_initialize
のような基本クラスを作成します。 リーリー、それ以外の場合は、次のような追加の特別な判断が必要です:
Login.php
不能继承Base.php
リーリー私も初心者ですが、ログインしてセッションを保存した後、バックエンドでセッションを決定するパブリック メソッドを作成し、必要なディレクトリでこのメソッドを使用できます。各ディレクトリに保存する必要はありません。判断する時が来ました。
リーリー
検証ミドルウェア (動作) を記述し、ルート内でこの検証ミドルウェアを呼び出す必要があるページを任意に指定できます。
マニュアルの動作部分を確認できます各ページに判定を導入する必要はなく、共通コントローラからすべてのコントローラを継承し、共通コントローラにセッション判定を記述することができます。