python - How can I detect user is inactive for 5 seconds in order to assign session key? -
python - How can I detect user is inactive for 5 seconds in order to assign session key? -
i trying implement next scenario web-page. if user inactive 5 seconds, log-out user. have request.session['islogin'], want re-assing session key false after user inactive 5 seconds. have tried utilize decorators after few codes, have not figure out should write next code observe inactive users. therefore, have question "how can observe user inactive 5 seconds in order assign session key, islogin, false ?
you can create middleware that
middleware.py
from datetime import datetime, timedelta django.conf import settings django.contrib import auth class autologout: def process_request(self, request): if not request.user.is_authenticated() : #can't log out if not logged in homecoming try: if datetime.now() - request.session['last_touch'] > timedelta( 0, settings.auto_logout_delay * 60, 0): auth.logout(request) del request.session['last_touch'] homecoming except keyerror: pass request.session['last_touch'] = datetime.now()
in settings, add together in middleware_classes:
middleware_classes = [ ................. 'app_name.middleware.autologout', ] , this: # auto logout delay in minutes auto_logout_delay = 60 #this equivalent 1 hr
python django
Comments
Post a Comment