-1

ユーザーベースのWebサイトでは、「logout.php」のようなページを使用するWebサイトが非常に一般的であり、私自身も自分のプロジェクトでそれらを使用していますが、今ではなぜだろうと思っています. 私の質問は次のとおりです。ユーザーをログアウトするために専用ファイルを使用する特定の利点はありますか? 次のような適切なクラス内にメソッドを作成するだけの方が、より組織化されていないでしょうか。

これはPHPで書かれた例です(これは私が使い始めたものと似ています):

public class Admin {

   private function logout() {
        $_SESSION[ADMIN_ACCESS_KEY] = null;
        unset($_SESSION[ADMIN_ACCESS_KEY]);
        return ($_SESSION[ADMIN_ACCESS_KEY]) ? false : true;    
   } 

}

この関数は、$_POST または $_GET 変数、またはその他の方法でトリガーされます。

ログアウトプロセスに単一の専用ファイルを使用することが非常に人気がある理由についての私の唯一の推測(Google、Facebookなどはこれを最後に確認しました)、ユーザーをページ(logout.php)に誘導するだけで、彼らはページが適切にロードされて実行されれば、何があってもログアウトされます。どちらの方法にも良い利点があると思いますか?

4

2 に答える 2

1

必ずしも独自のファイルではありません。ほとんどの場合、サイトは、url パラメーターがクラス メソッドに解析される MVC を実行しています。したがって、アクセスしていても、ブラウザから可能な限り簡単な方法でクラス内のメソッドを(最も単純な形式で)host.com/account/logout呼び出しているだけです。logout()account

クライアント側の Cookie を削除するだけで JavaScript を使用してこれを実行できると思われるかもしれませんが、ベスト プラクティスは、サーバーに保存されたセッションも破棄することです。

于 2013-04-10T06:23:47.030 に答える
0

私が考えることができる最大の利点は、開発者が<a href="logout.php">logout</a>タイプ ログアウト ボタンを保持できることです。これは、jquery やその他のクライアント側 JavaScript に依存せずにログアウトできることです。それらを別のページにリダイレクト/リンクするだけで、セッションデータが削除されます。

単純な単純な URL です。URL に入力することを好む人もいます。

于 2013-04-10T06:29:49.430 に答える