2010-12-21 8 views
0

私はDjangoアプリケーションで自動ログアウト機能を構築しようとしています。Djangoでセッションを使用した自動ログアウト(外部ビュー)

基本的には、サイトへのリクエストごとに、セッション内の現在のタイムスタンプ(設定されていない場合)を設定し、その値を現在の時刻でチェックします。差が大きすぎる場合は、ログアウトにリダイレクトする必要があります。

私の各ビューに機能を追加せずに、各リクエストでセッションを設定する簡単な方法はありますか? セッションをビューの外で使用することは可能ですが、session_keyを指定する必要があります。どこから取得するのか、自分で生成するのかはわかりません。

答えて

-1

ここで何のタイムスタンプを比較しているのかわかりません。

自動ログアウトを管理する通常の方法は、SESSION_COOKIE_AGE設定を使用してセッションクッキーに短い有効期限を設定することです。クッキーが期限切れになると、認証が必要なページにアクセスしようとすると、自動的にログインページにリダイレクトされます。

+0

私は、ユーザーが非アクティブな場合にのみログアウトしたいと思っています。たとえば、2分間何も操作しないとユーザーをログアウトさせます。このタイマーは、各要求(したがってタイムスタンプ)ごとにリセットする必要があります。 – Oli

+0

はい、そういうことが自動的に起こります。 –

+1

私は必要なものを正確に実行するミドルウェアクラスを見つけました.http://djangosnippets.org/snippets/449/回答ありがとう – Oli

関連する問題