Skip to main content

Django middleware that prevents user sessions from expiration.

Project description

django-everlasting-sessions

This Django middleware prevents user sessions from expiration.

Problem

When using django.contrib.sessions.middleware.SessionMiddleware, Django only saves the session cookie when a session is modified. On a typical site that only happens when a user logs in. In two weeks this session cookie expires and the user is prompted to login again, even if he’s been actively using the site.

Solution

django-everlasting-sessions provides a middleware that will update session cookies once in a while (every day by default), provided there is some activity from the user.

Installation

pip install django-everlasting-sessions

Usage

Add the middleware to settings.py:

MIDDLEWARE_CLASSES = [
        ...
        'django.contrib.sessions.middleware.SessionMiddleware',
        'django_everlasting_sessions.UpdateSessionMiddleware',  # Must go after SessionMiddleware
        ...
]

The rest will happen automatically.

Options

The following default is used which you can override in settings.py:

SESSION_COOKIE_REFRESH = 86400  # Interval in seconds.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

django-everlasting-sessions-0.0.4.tar.gz (1.3 kB view details)

Uploaded Source

File details

Details for the file django-everlasting-sessions-0.0.4.tar.gz.

File metadata

File hashes

Hashes for django-everlasting-sessions-0.0.4.tar.gz
Algorithm Hash digest
SHA256 0a6b91c960a4a872e85ad78e179a6b19b60de1193c6474177e2b10d17aa251c5
MD5 cc357e5368e9879e9665bcd7dd828edd
BLAKE2b-256 7a1d4c358cbafe66c4806902aba0d279703a75dd77368eb72ebac1090bd1cf0d

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page