ブラウザが閉じられているとき、またはログアウトボタンをクリックしてアプリケーションをログアウトする。しかし、クロムやFirefoxで「中止した場所を続ける」がオンになっていると、セッションはクリアされません。ブラウザはセッション値を保存して設定を適用します。私のアプリケーションには機密情報が含まれているので、クリアする必要があります。タブを閉じるとログアウトしたくありません。誰もこれを行う方法を提案することはできますか?私はすでに、タブが5分間以上非アクティブのままであるときのタイマーログアウトを実装しました。また、ブラウザが閉じられるとログアウトします。 "ここで問題となるのは、ブラウザでログアウトしないブラウザで「続行した場所を続ける」設定がオンになっているときです。」です。私はちょうど私の最後のポイントに基づいて提案をしたい。クロムで「中断した場所から続ける」設定が有効になっている場合、ウィンドウ上でセッションをクリアする
答えて
他のタブがアクティブな間に簡単なタブクローズで自動ログアウトしたくない場合は、直接の方法はありません。すべてのクライアントサイドスクリプトはタブ内でしかコントロールできないため、自分自身を解放したり、ブラウザウィンドウ自体を制御することはできません。
周りの代わりにログオフユーザー、彼は積極的な任意のタブを持っていなかったとき、のは言わせ、30秒になり、他の方法:
1)はすべてのページにロードされているスクリプトを追加しますこのクライアントがまだアクティブであることをサーバーに定期的にajaxリクエストします。
2)これらの要求をリッスンし、前回のセッションで受信したサーバーサイドスクリプトを作成します。
3)最後に、session_start()の後のどこかにスクリプトが含まれていて、最後のリフレッシュ時間をチェックし、最後のリフレッシュ要求からあまりにも多くの時間が経過した場合にセッションをクリアする可能性があります。その期間...または接続の問題は、完璧にすることはできません)。
ダビッドの提案をありがとうが、私はすでにあなたが言ったことを適用した。ここでは、ブラウザの設定でログアウトが間違っています。通常、ブラウザを閉じると、セッション値がクリアされます。キャッシュの代わりにセッションに行く理由ページを読み込むためにchrome saveセッションでこの設定を「中断したところから続ける」。私はちょうどセッションの値を保存することからそれを停止したい、または他の提案が歓迎されています。 – Sam
この設定をオフにする唯一の方法は、ブラウザの設定を使用することです。スクリプトからは実行できません。 – David162795
- 1. 私のdjangoアプリケーションでプロキシ設定を有効にする場所
- 2. 所有者が設定されていない場合のループバック
- 3. Firefox DevToolsを既定で有効にする(以前に有効になっていた場合)
- 4. RadioButtonが無効になっている場合はComboBoxをクリアします
- 5. javascriptが有効になっている場合、jqGridをダウングレードできますか?
- 6. コンテンツがスクロール可能かどうかを判断するプロパティ(有効になっていない場合)
- 7. 「中断した」Hadoopジョブを中断した場所から再開することは可能ですか?
- 8. テキストボックスが設定されている場合にボタンを有効にする
- 9. トグルボタンがチェックされている場合、CheckBoxを有効に設定します。
- 10. 親コントロールが有効/無効になっている場合に、その場で作成されたカスタムコントロールを有効/無効にする方法
- 11. スタティックブロックが有効になっている場合、カテゴリー見出しを隠す(magento)
- 12. セッションが既に有効期限切れになっている場合、Codeigniterはログインページにリダイレクトします
- 13. モデルが有効でない場合、エラーメッセージ
- 14. styleservicesが有効になっていない場合、texthintを有効にできますか?
- 15. SpringデータJPAリポジトリが見つからないApache Shiroアノテーションがスプリングで有効になっている場合
- 16. ブラウザでjavascriptが有効になっていない場合にメッセージを表示
- 17. twitterユーザーが場所を有効にしているかどうかを知る
- 18. 重要な変更が有効になっている場所を無効にする
- 19. createを使用中です! accepts_nested_attributesが有効な場合
- 20. caffeがテストフェーズ中に変数を設定しなかった場合
- 21. 「場所」でhasManyを続ける
- 22. フォームが有効でない場合、同じページに留まる
- 23. ブレークポイントの配置場所がわからない場合、デバッグ時にプロセスを強制的に中断させるにはどうすればよいですか?
- 24. 他のプロファイルが有効になっていない場合は、Mavenプロファイルを有効にしてください。
- 25. "if-statement"が失敗した場合のテストを中断する
- 26. レイアウトで無効になっている場合、プログラムでボタンを有効にする方法
- 27. セッションがレールで閉じられている場合にエラーメッセージを表示したい場合
- 28. マクロが有効になっている場合、Excel VBAからWorksheet_Changeを変更する方法
- 29. GPSがnode.js + cordova + ionicアプリで有効になっていることを確認し、GPSが無効になっている場合は、ユーザーに通知してGPSを有効にする設定を指示してください。
- 30. 設定を有効にせずに場所を模擬する方法
'window.onbeforeunload = function(event){/ *ここでセッションをクリアするためにajaxを実行する* /};'本当にjavascriptを使用しているかどうかわからないが、これをコメントとして投稿して申し訳ありません。あなたがしていない場合は、クライアント側のスクリプトの助けなしには不可能です。 – Manikiran
'セッション_destroy( '')' ..? –
[ブラウザが再読み込み/終了する前にJavascript関数を実行する/ページを終了する]の可能な複製がありますか?](http://stackoverflow.com/questions/14746851/execute-javascript-function-before-browser-reloads-closes-browser-exits- page) – Manikiran