【Python】Web学习笔记_flask(6)——会话&session对象

处理利用cookie来判断用户登录外,也可以使用session来判断用户是否登录

html代码和cookie对象的设置相同

python 复制代码
from flask import Flask,request,render_template,make_response,session,url_for,redirect

app=Flask(__name__)
app.secret_key='ps1234567890'
@app.route('/')
def index():
    #判断cookie是否存在
    if session.get('logged_in'):
        return '欢迎来到首页'
    else:
        return '请先登录'

@app.route('/login',methods=['GET','POST'])
def login():
    #验证表单数据
    if request.method=='POST':
        username=request.form['username']
        password=request.form['password']
        if username=='mrsoft' and password=='psword':
            #如果用户名和密码正确,写入cookie
            session['logged_in']=True
            return redirect(url_for('index'))
    return render_template('login.html')

@app.route('/logout')
def logout():
    session.pop('logged_in')
    return redirect(url_for('login'))

if __name__=='__main__':
    app.run(
        debug=True
        ,port=8000
    )
相关推荐
RaidenLiu10 分钟前
告别陷阱:精通Flutter Signals的生命周期、高级API与调试之道
前端·flutter·前端框架
非凡ghost10 分钟前
HWiNFO(专业系统信息检测工具)
前端·javascript·后端
非凡ghost12 分钟前
FireAlpaca(免费数字绘图软件)
前端·javascript·后端
非凡ghost19 分钟前
Sucrose Wallpaper Engine(动态壁纸管理工具)
前端·javascript·后端
DKunYu19 分钟前
PyTorch入门
人工智能·pytorch·python·深度学习
拉不动的猪20 分钟前
为什么不建议项目里用延时器作为规定时间内的业务操作
前端·javascript·vue.js
楼田莉子23 分钟前
C++学习:C++11关于类型的处理
开发语言·c++·后端·学习
该用户已不存在27 分钟前
Gemini CLI 扩展,把Nano Banana 搬到终端
前端·后端·ai编程
地方地方29 分钟前
前端踩坑记:解决图片与 Div 换行间隙的隐藏元凶
前端·javascript
ZhengEnCi30 分钟前
Python_哈希表完全指南-从字典到高效查找的 Python 编程利器
python