【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
    )
相关推荐
Bigger几秒前
在 React 里优雅地 “隐藏 iframe 滚动条”
前端·css·react.js
小沐°2 分钟前
vue3-ElementPlus出现Uncaught (in promise) cancel 报错
前端·javascript·vue.js
四瓣纸鹤7 分钟前
F2图表在Vue3中的使用方法
前端·javascript·vue.js·antv/f2
web前端12314 分钟前
# @shopify/react-native-skia 完整指南
前端·css
shanLion14 分钟前
从 iframe 到 Shadow DOM:一次关于「隔离」的前端边界思考
前端·javascript
superman超哥14 分钟前
仓颉借用检查器工作原理深度解析
c语言·开发语言·c++·python·仓颉
精神状态良好17 分钟前
RAG 是什么?如何让大模型基于文档作答
前端
CRAB17 分钟前
解锁移动端H5调试:Eruda & VConsole 实战指南
前端·debug·webview
OpenTiny社区17 分钟前
Vue2/Vue3 迁移头秃?Renderless 架构让组件 “无缝穿梭”
前端·javascript·vue.js
敲代码的独角兽18 分钟前
深入理解 JavaScript 异步机制:从回调到 Promise 再到 async/await
前端