【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
    )
相关推荐
icebreaker3 分钟前
tailwindcss 究竟比 unocss 快多少?
前端·css·github
卢叁8 分钟前
Flutter之自定义TabIndicator
前端·flutter
我怕是好18 分钟前
学习stm32 蓝牙
stm32·嵌入式硬件·学习
伊玛目的门徒18 分钟前
告别 OpenAI SDK:如何使用 Python requests 库调用大模型 API(例如百度的ernie-4.5-turbo)
python·openai·requests·大模型调用·ernie-4.5-turbo
每天吃饭的羊20 分钟前
state和ref
前端·javascript·react.js
GEO_YScsn21 分钟前
Vite:Next-Gen Frontend Tooling 的高效之道——从原理到实践的性能革命
前端·javascript·css·tensorflow
GISer_Jing21 分钟前
滴滴二面(准备二)
前端·javascript·vue·reactjs
索迪迈科技23 分钟前
STM32F103C8T6开发板入门学习——点亮LED灯2
stm32·嵌入式硬件·学习
ningmengjing_25 分钟前
webpack打包方式
前端·爬虫·webpack·node.js·逆向
Yuner200027 分钟前
Webpack开发:从入门到精通
前端·webpack·node.js