【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
    )
相关推荐
小龙1 分钟前
【学习笔记】多标签交叉熵损失的原理
笔记·学习·多标签交叉熵损失
weixin_425023003 分钟前
Spring Boot 配置文件优先级详解
spring boot·后端·python
知识分享小能手39 分钟前
Ubuntu入门学习教程,从入门到精通,Ubuntu 22.04的Linux网络配置(14)
linux·学习·ubuntu
VX:Fegn08951 小时前
计算机毕业设计|基于springboot + vue校园社团管理系统(源码+数据库+文档)
前端·数据库·vue.js·spring boot·后端·课程设计
手揽回忆怎么睡1 小时前
Streamlit学习实战教程级,一个交互式的机器学习实验平台!
人工智能·学习·机器学习
小徐Chao努力1 小时前
【Langchain4j-Java AI开发】06-工具与函数调用
java·人工智能·python
xiaoxiaoxiaolll1 小时前
《Advanced Materials》基于MXene的复合纤维实现智能纺织品多模态功能集成
学习
无心水1 小时前
【神经风格迁移:全链路压测】33、全链路监控与性能优化最佳实践:Java+Python+AI系统稳定性保障的终极武器
java·python·性能优化
luoluoal2 小时前
基于python的小区监控图像拼接系统(源码+文档)
python·mysql·django·毕业设计·源码
ChangYan.2 小时前
直接下载源码但是执行npm run compile后报错
前端·npm·node.js