def save_session(self, app, session, response): try: domain = self.get_cookie_domain(app) path = self.get_cookie_path(app) httponly = self.get_cookie_secure(app) secure = self.get_cookie_secure(app) expires = self.get_expiration_time(app, session) response.set_cookie(app.session_cookie_name, session['key'], expires=expires, httponly=httponly, domain=domain, path=path, secure=secure) try: obj = DjangoSession.objects.get(session_key=session['key']) except DjangoSession.DoesNotExist: obj = DjangoSession(session_key=session['key']) obj.session_data = pickle.dumps(dict(session)) obj.expire_date = expires or (datetime.now() + timedelta(days=30)) obj.save() finally: close_old_connections()
def save_session(self, app, session, response): try: obj = DjangoSession.objects.get(session_key=session['key']) except DjangoSession.DoesNotExist: obj = DjangoSession(session_key=session['key']) obj.session_data = json.dumps(dict(session, fix_imports=True)) obj.expire_date = get_datetime_now() + timedelta(days=365) obj.save() close_old_connections()
def test_session_backend(self): from django.contrib.sessions.backends.db import SessionStore from django.contrib.sessions.models import Session from pymongo.objectid import ObjectId Session.objects.all().delete() session = Session(session_key=str(ObjectId())) session.save() self.assertEqual(Session.objects.count(), 1) session.save() self.assertEqual(Session.objects.count(), 1) session.expire_date = datetime.datetime.now() self.assertEqual(Session.objects.count(), 1)
def do_login(login,moi_password,username): try: user=User.objects.get(username=username) except User.DoesNotExist: return None salt="salt" hasher=PBKDF2PasswordHasher() hashed_pass=make_password(moi_password,salt,hasher) if user.password==hashed_pass: session=Session() session.key=get_secret_key() session.user=user session.expires=datetime.now()+timedelta(days=5) session.expire_date=datetime.now()+timedelta(days=5) session.save() else: return None return session.key
def test_demo(self): s = Session() from datetime import datetime s.expire_date = datetime.now() s.save() s.delete()