Custom Middleware not worked on live server python django

30 Views Asked by At

When enable custom middleware in setting.py file in live server then the django application shows an error in browser:

We're sorry, but something went wrong. The issue has been logged for investigation. Please try again later.

error id: 1312e065.

N.B in localhost server there was no issue.

Setting.py:

MIDDLEWARE = [ 
    'corsheaders.middleware.CorsMiddleware',
    'django.middleware.security.SecurityMiddleware',
    'django.contrib.sessions.middleware.SessionMiddleware',
    'userAuth.custom_middleware.RequestLoggerMiddleware',
    'django.middleware.common.CommonMiddleware',
    'django.middleware.csrf.CsrfViewMiddleware',
    'django.contrib.auth.middleware.AuthenticationMiddleware',
    'userAuth.middleware.InactivityTimeoutMiddleware',
    'django.contrib.messages.middleware.MessageMiddleware',
    'django.middleware.clickjacking.XFrameOptionsMiddleware',  
]
middleware.py:
class InactivityTimeoutMiddleware:
    def __init__(self, get_response):
        self.get_response = get_response

    def __call__(self, request):
        response = self.get_response(request)

        if request.user.is_authenticated:
            session_key = request.session.session_key
            if session_key:
                session = Session.objects.get(session_key=session_key)
                last_activity = session.get_decoded().get('_session_last_activity')

                if last_activity:
                    idle_time = timezone.now() - last_activity
                    if idle_time > timedelta(minutes=5):
                        # User has been inactive for more than 5 minutes, log them out
                        request.session.flush()

        return response

thanks in advance.

0

There are 0 best solutions below