from datetime import timedelta
from flask import Flask, request, session
app = Flask(__name__)
# 设置应用秘钥(用于session的签名处理)
app.secret_key = "o1Jx5NSCNHZOh2zfJHt6q+NsXaw="
# 设置session的有效期
app.permanent_session_lifetime = timedelta(days=7)
@app.route('/')
def index():
# 获取session中的数据, 进行判断
name = session.get('name')
if name:
return "欢迎回来, %s" % name # 已登录
else:
return "首页" # 未登录
@app.route('/login', methods=['GET', 'POST'])
def login():
if request.method == 'GET': # GET 展示页面
# 会读取出静态文件的内容包装为响应对象, 并且根据文件类型自动设置content-type
return app.send_static_file('login.html')
else: # POST 获取提交的表单数据, 进行登录认证
username = request.form.get('username')
password = request.form.get('password')
if username == 'zs' and password == '123':
# 开启session的有效机制 默认为31天有效
session.permanent = True
# 记录用户的身份信息 使用session状态保持
# session也是类字典对象 也可以像字典一样存取数据
session["name"] = 'zs'
# 删除session数据
# session.pop('name')
return "登录成功"
else:
return "登录失败"
if __name__ == '__main__':
app.run(debug=True)
session
最新推荐文章于 2024-10-24 06:00:00 发布