【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
    )
相关推荐
捉鸭子7 分钟前
某音a_bogus vmp逆向
爬虫·python·web安全·node.js·js
曲幽18 分钟前
FastAPI 生产环境静态文件完全指南:从 /favicon.ico 404 到 HSTS 混合内容,一次全根治
python·fastapi·web·static·media·404·hsts·favicon·url_for
Dontla19 分钟前
Python asyncpg库介绍(基于Python asyncio的PostgreSQL数据库驱动)连接池、SQLAlchemy
数据库·python·postgresql
We་ct26 分钟前
React 性能优化精讲
前端·javascript·react.js·性能优化·前端框架·html·浏览器
zh15702327 分钟前
如何编写动态SQL存储过程_使用sp_executesql执行灵活查询
jvm·数据库·python
2401_8242226932 分钟前
SQL报表统计数据量巨大_分批统计策略
jvm·数据库·python
X566135 分钟前
mysql如何处理连接数过多报错_调整max_connections参数
jvm·数据库·python
云动课堂36 分钟前
【运维实战】Nginx 高性能Web服务 · 一键自动化部署方案 (适配银河麒麟 V10 / openEuler / CentOS 7/8)
运维·前端·nginx
m0_609160491 小时前
MongoDB中什么是Hashed Shard Key的哈希冲突_哈希函数的分布均匀性分析
jvm·数据库·python
Ulyanov1 小时前
《现代 Python 桌面应用架构实战:PySide6 + QML 从入门到工程化》 开发环境搭建与工具链极简主义 —— 拒绝臃肿,构建工业级基座
开发语言·python·qt·ui·架构·系统仿真