22、加密的本地缓存
Session是存储在服务器中的,Cookie是存储在浏览器本地中。而Flask的Session是基于Cookie的,它是经过加密保存在Cookie中
from flask import Flask, session
from datetime import timedelta
import os
app = Flask(__name__)
# 设置session
app.config['SECRET_KEY'] = os.urandom(24) # 配置一个随机密钥
# 配置该Session具有 7 天有效期
app.config['PERMANENT_SESSION_LIFETIME'] = timedelta(days=7)
# 设置Session
@app.route('/')
def set_session():
session['username'] = 'zhangsan' # 添加一个Session键值对
session.permanent = True # 开启Session有效期,默认是31天。这里前面已经更改
return 'Session设置成功!'
# 获取session
@app.route('/get_session')
def get_session():
# 由于session被加密,但可以作为返回值打印到浏览器中
username = session.get('username')
return username or 'Session为空!'
# 删除某一个sessin
@app.route('/del_session')
def del_session():
session.pop('username')
return 'Session被删除!'
# 清空所有Session
@app.route('/cl_session')
def cl_session():
session.clear()
return '所有Session被清空'
if __name__ == '__main__':
app.run()