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()

参考资料

https://weread.qq.com/web/reader/0a932660718ac6bc0a9702e

posted @ 2022-06-04 02:11  tiansz  阅读(47)  评论(0编辑  收藏  举报