7

私のDjangoアプリケーションでは、30分間操作がないとユーザーが自動的にログアウトされるようにしたいので、settings.pyでこの設定を使用しました。

SESSION_COOKIE_AGE = 1800

ただし、この設定を使用すると、アクティビティに関係なく、ユーザーは30分でログアウトされます。Djangoアプリケーションが非アクティブであるために自動ログアウトを強制するにはどうすればよいですか?

4

3 に答える 3

5

このトピックの更新として。DjangoにSESSION_SAVE_EVERY_REQUEST設定が追加され、非常に簡単になりました。

于 2016-03-14T12:57:36.650 に答える
4

django-session-securityは、サーバー側のユーザーアクティビティと、mousemove、keypressなどのjavascriptイベントを記録します...また、セッションを期限切れにする前にユーザーに警告し、セッションを期限切れにしないようにします(アクティビティはおそらく別のブラウザタブからですか?)

インストールして設定するだけsettings.SESSION_SECURITY_EXPIRE_AFTER=1800です。を設定することもできますsettings.SESSION_SECURITY_WARN_AFTER=1740

于 2012-05-19T08:18:39.493 に答える
3

ユーザーがサイトにアクセスしたときに、ユーザーのセッションを更新できます。たとえば、ミドルウェアでは、この強制セッションが再度設定されます。

class ActivateUser(object):
    def process_request(self, request):
        if request.user.is_authenticated():
            request.session.modified = True
于 2012-04-22T05:12:09.853 に答える