Flask(12)- 操作 Session
前言
Session 详解:https://www.cnblogs.com/poloyy/p/12513247.html
这一节来瞧一瞧如何用 Flask 操作 Session
功能 list
提供操作 Session 的 4 项功能
| 页面路径 | 功能 |
|---|---|
| /set | 在 Session 中存储一个名称为 ‘user’、值为 ‘tom’ 的变量 |
| /get | 获取 Session 中名称为 ‘user’ 的变量 |
| /del | 删除 Session 中名称为 ‘user’ 的变量 |
| /clear | 清除 Session 中所有的变量 |
项目构成
程序有 2 个源文件构成
| 源文件 | 描述 |
|---|---|
| app.py | Flask 后端程序,提供操作 Session 的接口 |
| templates/query.html | 查询 Session 中名称为 user 和 pwd 的变量,并返回给客户端 |
模板文件 query.html
用户的数据存储在 Session 中,服务端程序使用页面模板 query.html 展示 Session 中的数据
<html>
<head>
<meta charset='UTF-8'>
<title>显示 session 中的变量</title>
</head> <body>
<h1>显示 session 中的变量</h1>
<h2>session.get('user') = {{ user }}</h2>
<h2>session.get('pwd') = {{ pwd }}</h2>
</body> </html>
Flask app.py 代码
引入模块
#!usr/bin/env python
# -*- coding:utf-8 _*-
"""
# author: 小菠萝测试笔记
# blog: https://www.cnblogs.com/poloyy/
# time: 2021/7/16 9:47 下午
# file: app.py
""" from flask import Flask, render_template, session
import os app = Flask(__name__)
app.config['SECRET_KEY'] = os.urandom(24)
- Flask 有个配置属性叫 SECRET_KEY
- SECRET_KEY 是一个密钥,Flask 以及相关的扩展 extension 需要进行加密时需要使用这个密钥
- 使用 Session 存储数据时,Flask 在内部需要进行加密处理,所以要配置这个 KEY
- 这边用 Python 的 os.random() 生成一个包含 24 个字符的随机字符串
设置 Session
@app.route("/set")
def set():
session["user"] = "poloyy"
session["pwd"] = "password"
return render_template('query.html', user=session.get("user"), pwd=session.get("pwd"))
获取 Session
@app.route("/get")
def get():
user = session.get("user")
pwd = session.get("pwd")
return render_template('query.html', user=user, pwd=pwd)
删除 Session
@app.route("/del")
def del_():
session.pop("user")
return render_template('query.html', user=session.get("user"), pwd=session.get("pwd"))
清空 Session 全部变量
@app.route("/clear")
def clear():
session.clear()
return render_template('query.html', user=session.get("user"), pwd=session.get("pwd"))
浏览器的运行效果
设置 Session
获取 Session

删除 Session

清空 Session 全部变量

总结

Flask(12)- 操作 Session的更多相关文章
- Flask中的session操作
一.配置SECRET_KEY 因为flask的session是通过加密之后放到了cookie中.所以有加密就有密钥用于解密,所以,只要用到了flask的session模块就一定要配置“SECRET_K ...
- Flask初学者:session操作
cookie:是一种保存数据的格式,也可以看成是保存数据的一个“盒子”,服务器返回cookie给浏览器(由服务器产生),由浏览器保存在本地,下次再访问此服务器时浏览器就会自动将此cookie一起发送给 ...
- 9.Flask Cookie和Session
1.1.概念 cookie:在网站中,http请求是无状态的.也就是说即使第一次和服务器连接后并且登录成功后,第二次请求服务器依然不能知道当前请求是哪个用户.cookie的出现就是为了解决这个问题,第 ...
- flask 状态保持session和上下文session的区别
问题场景: 在falsk项目中导入了两个session: 首先,配置文件config.py文件中 有个 flask_session扩展导入了Session ( from flask_sessi ...
- Flask的插件session、SQLAlchemy、Script、Migrate
一.flask-session 1.为什么要使用flask-session 因为flask默认的session是通过请求上下文放入到Local中的,是存在内存的,而使用flask-session可以更 ...
- flask总结之session,websocket,上下文管理
1.关于session flask是带有session的,它加密后存储在用户浏览器的cookie中,可以通过app.seesion_interface源码查看 from flask import Fl ...
- Flask中的session ,自定义实现 session机制, 和 flask-session组件
session 是基于cookie实现, 保存在服务端的键值对(形式为 {随机字符串:'xxxxxx'}), 同时在浏览器中的cookie中也对应一相同的随机字符串,用来再次请求的 时候验证: 注意 ...
- 将 flask 中的 session 存储到 SQLite 数据库中
将 flask 中的 session 存储到 SQLite 数据库中 使用 flask 构建服务器后端时,常需要在浏览器端存储 cookie 用于识别不同用户,根据不同的 cookie 判断出当前请求 ...
- 笔记-flask基础操作
笔记-flask基础操作 1. 前言 本文为flask基础学习及操作笔记,主要内容为flask基础操作及相关代码. 2. 开发环境配置 2.1. 编译环境准备 安装相关Lib ...
随机推荐
- CVPR2020论文解析:视频语义检索
CVPR2020论文解析:视频语义检索 Fine-grained Video-Text Retrieval with Hierarchical Graph Reasoning 论文链接:https:/ ...
- TensorFlow中的语义分割套件
TensorFlow中的语义分割套件 描述 该存储库用作语义细分套件.目标是轻松实现,训练和测试新的语义细分模型!完成以下内容: 训练和测试方式 资料扩充 几种最先进的模型.轻松随插即用 能够使用任何 ...
- 十一、设置Nginx开机自启动
一.创建nginx.service文件 [root@svr7 ~]# vim /lib/systemd/system/nginx.service [Unit]Description=nginx ser ...
- 【NX二次开发】PMI线性标注
PMI线性标注,二次开发的难点在于控制尺寸的位置,多花点儿时间都能搞出来,想走捷径最下面就是源码. 只需要摆好工作坐标,然后指定你要标注尺寸的两个点,就可以很方便得利用这个封装函数做出你想要的PMI. ...
- 『动善时』JMeter基础 — 45、脚本录制工具Badboy介绍
目录 1.Badboy软件介绍 2.Badboy下载 3.Badboy安装 4.Badboy界面介绍 (1)菜单栏: (2)工具栏: (3)左下角界面视图: 1.Badboy软件介绍 Badboy是一 ...
- anaconda安装VSCODE后,python报错
重新用anaconda时遇到了一点问题. 测试anaconda捆绑安装的VSCODE时写了一行print(1),然后报错. 后来发现用anaconda下载vscdoe时并不会给python一个路径,这 ...
- 小目标增强(Augmentation for small object)
小物体检测的增强 摘要:在近些年来,目标检测已经有了长足的进步.尽管有很大改进,但是在小目标和大目标检测性能方面还是有巨大的差距.我们在具有挑战性的数据集MS-COCO上分析了目前性能最好的模型Mas ...
- ffmpeg实战-音视频基础概念
转发自白狼栈:查看原文 关于音视频,相信大家都看过电影(视频),听过音乐(音频),至少应该都知道mp4是视频文件,mp3是音频文件. 对于一个音视频文件,都有哪些属性呢?以视频为例,我们可以通过 ff ...
- 【模拟7.29】大佬(概率期望DP)
首先根据数据范围,可以判断基本上是n^2的复杂度 通过分析我们发现每一次都可以从m个数中任意选,既然任意选,那么此时的概率的分母就是不变的,然而题中涉及的是某一段的最大值,所以我们按套路假设 f[i] ...
- mysql 事务,锁,隔离机制
mysql架构 锁 为了解并发问题,引入锁,mysql中锁分为读锁和写锁,即share lock和exclusive lock.故名思义,share lock之间不互斥,share lock和excl ...
