カスタムログアウトページがあります。ユーザーがログアウトをクリックすると、このページが表示されます (ログアウト ステータスがデータベースに保存されます)。ログインメカニズムはありません。ユーザーが新しいウィンドウで試行すると、ページの表示が許可され、ログアウト ステータスがログイン済みとして変更されます。
ログアウトすると、ユーザーが (ログアウト ページから) [戻る] ボタンをクリックしたときに、ユーザーが前のページを表示できないようにする必要があります。
同様に、ユーザーがページにアクセスすると、時間が保存されます。彼が 20 分間アイドル状態で操作を試みると、タイムアウトしたセッションにリダイレクトされます。戻るボタンのクリックで前のページを表示できないようにする必要があります。
現在、各ページでデータベースのステータスを確認し、ステータスがログアウトされている場合はログアウトしたページに再度リダイレクトしています。ただし、ページが最初に読み込まれ、次に JavaScript で検証されてからリダイレクトされます。これを処理するより良い方法はありますか?
注: Clear browser historyのコメントに基づいて、新しい質問として投稿しています。
$.ajax(
{
type: "POST",
url: "LogOut.aspx/GetActiveIndicatorStatus",
data: '{"empID": "' + empID + '"}',
contentType: "application/json; charset=utf-8",
dataType: "json",
success: navigateBasedOnStatus
}
);
//Helper Function
function navigateBasedOnStatus(result) {
if (result.hasOwnProperty("d")) {
result = result.d
}
//alert($.trim(result));
if ($.trim(result) == "LoggedOUT") {
window.location.href("LogOut.aspx");
}
else
{
contentHolderDiv.css("display", "block");
}
}
参照: