【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
    )
相关推荐
墨黎芜16 分钟前
ArcGIS从入门到精通——地图符号、注记的初步使用
学习·arcgis·信息可视化
小李云雾20 分钟前
FastAPI重要知识点---中间件(Middleware)
学习·程序人生·中间件·fastapi·middleware
weixin_5806140020 分钟前
MySQL存储过程中如何防止SQL注入_使用参数化查询规范
jvm·数据库·python
2401_8371638921 分钟前
PHP源码开发用台式机还是笔记本更合适_硬件选型对比【方法】
jvm·数据库·python
.Cnn24 分钟前
JavaScript 前端基础笔记(网页交互核心)
前端·javascript·笔记·交互
小夏子_riotous34 分钟前
Docker学习路径——3、常用命令
linux·运维·服务器·学习·docker·容器·centos
baidu_3409988236 分钟前
mysql修改列名会导致程序报错吗_Change Column语法与兼容性
jvm·数据库·python
醉酒的李白、38 分钟前
Vue3 组件通信本质:Props 下发,Emits 回传
前端·javascript·vue.js
xiaohe0744 分钟前
超详细 Python 爬虫指南
开发语言·爬虫·python
Bruceoxl44 分钟前
【人物传记】Python 之父-吉多·范罗苏姆
python·计算机·人物传记