- 当请求刚到来:flask读取cookie中session对应的值:eyJrMiI6NDU2LCJ1c2VyIjoib2xkYm95,将该值解密并反序列化成字典,放入内存以便视图函数使用。
视图函数:
@app.route('/ses')
def ses():
session['k1'] = 123
session['k2'] = 456
# del session['k1'] 删除对应k1的session
return "Session"
当请求结束时,flask会读取内存中字典的值,进行序列化+加密,写入到用户cookie中。操作session就是操作字典
- flash闪现,在session中存储一个数据,读取时通过pop将数据移除。读取一次之后,对应session值就被移除了
from flask import Flask,flash,get_flashed_messages
@app.route('/page1')
def page1():
flash('临时数据存储','error')
flash('sdfsdf234234','error')
flash('adasdfasdf','info')
return "Session"
@app.route('/page2')
def page2():
print(get_flashed_messages(category_filter=['error'])) #分组的情况下,只读error组的数据
print(get_flashed_messages()) #未分组情况下
return "Session"