from flask import Flask from flask import session from flask import request from flask import json from flask import render_template from flask import redirect from flask import session from flask import url_for import uuid import redis r = redis.Redis() sid = str(uuid.uuid4()) user = {"users": [{"password": "Sikorski", "username": "Andrzej"}, {"password": "asdfg", "username": "admin"}]} rval = json.dumps(user) r.set('user1', rval) app = Flask(__name__) app.secret_key = b'0293jr i(UHoiawu hft923' print('SID: '+sid) @app.route('/sikorska/webapp') def home(): if 'username' in session: return "OK" # return render_template('upload.html') return redirect(url_for('login')) @app.route('/sikorska/webapp/login', methods=['GET', 'POST']) def login(): if 'username' in session: return redirect(url_for('home')) error = None if request.method == 'POST': if login_check(request.form['username'], request.form['password']): session['username'] = request.form['username'] # session['uuid'] = uuid.uuid4() return redirect(url_for('home')) else: error = "Invalid Credentials. Please try again." return render_template('loginpg.html', error=error) @app.route('/sikorska/webapp/logout') def logout(): session.pop('username', None) #session['uuid'] = None return redirect(url_for('login')) def login_check(username, password): data = r.get('user1') result = json.loads(data) for row in result['users']: if row['username'] == username: if row['password'] == password: return True return False