我制作了一个flask应用程序,该应用程序依赖于会话cookie进行登录。但是,每当我重新打开浏览器并访问http://localhost:5000/时,cookie都会消失并且我将注销。
这是我的一些代码:
app = Flask(__name__)
app.config["SECRET_KEY"] = <bytes object generated by os.urandom(24)>
app.config["PERMANENT_SESSION_LIFETIME"] = timedelta(hours=1)
@app.route("/")
def login_redirect():
if check_login(session, False):
return redirect("/interface")
return redirect("/login")
def check_login(session, requires_elevated):
if "username" not in session:
return False
elif session["username"] == "admin":
return True
elif session["username"] == "regular" and not requires_elevated:
return True
return False
我不想粘贴所有内容,因为其中一些是私有的,但是如果我可以包括其他内容可能会有所帮助,请告诉我,我会这样做。
谢谢。
答案 0 :(得分:1)
在before_request
中,您需要将会话设置为永久会话,以便遵守您的配置设置:
@app.before_request
def setup():
session.permanent = True