一 知识点

1. 安装 flask 1.0.2

使用Flask-Session,其实必须需要配置的只有这几个地方:

注意!!!!!!:

1.  需要配置的地方1

# flask_session 中的Session是依赖于falsk中的session的,所以这里的session一定要导入,否则运行过程中报错

from flask import Flask, render_template, request

2. 需要配置的地方2 (浏览源码获得的结果)

# 如果你不对这个flask_session中的Session进行配置的话,它在源码中跑一圈,就会回来使用flask中原生的session
# 如果配置了,就会使用相应的配置,使用flask_session中的session,配合你的配置进行运行 app.config["SESSION_TYPE"] = "redis" # 指定"SESSION_TYPE"
app.config["SESSION_REDIS"] = Redis(host='127.0.0.1', port=6379) # 指定"SESSION_REDIS",应该是个redis链接

3. 需要配置的地方3

# 实例化一个session,需要配合配置
Session(app)

4. 必须注意的地方: Session(app) 必须写在app.config[]的下边!!!!!否则会报错说需要将应用程序上的secret_key设置为唯一且保密的内容:

# The session is unavailable because no secret key was set.
# Set the secret_key on the application to something unique and secret.
# 翻译会话不可用,因为没有设置密钥。 将应用程序上的secret_key设置为唯一且保密的内容。

二 具体代码如下:

app.py 文件:

# 注意: flask_session 中的Session是依赖于falsk中的session的,所以这里的session一定要导入,否则运行过程中报错
from flask import Flask, request, render_template, redirect, session
from flask_session import Session
from redis import Redis app = Flask(__name__) # 如果你不对这个flask_session中的Session进行配置的话,它在源码中跑一圈,就会回来使用flask中原生的session
# 如果配置了,就会使用相应的配置,使用flask_session中的session,配合你的配置进行运行
app.config["SESSION_TYPE"] = "redis" # 指定"SESSION_TYPE"
app.config["SESSION_REDIS"] = Redis(host='127.0.0.1', port=6379) # 指定"SESSION_REDIS",应该是个redis链接 # 实例化一个session,需要配合配置(必须写在app.config[]的下边!!!!!否则会报错说需要将应用程序上的secret_key设置为唯一且保密的内容)
# The session is unavailable because no secret key was set. Set the secret_key on the application to something unique and secret.
# 翻译会话不可用,因为没有设置密钥。 将应用程序上的secret_key设置为唯一且保密的内容。
Session(app) @app.route("/login", methods=["GET", "POST"])
def login():
if request.method == "GET":
return render_template("login.html")
else:
# session["user"] = 123
session["user"] = request.form.get('username')
return " 愿每个人都被世界所善待~ {}".format(str(session["user"])) if __name__ == '__main__':
app.run()

login.html 文件:

<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta http-equiv="content-Type" charset="UTF-8">
<meta http-equiv="x-ua-compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Title</title>
</head>
<body>
<form action="" method="post" enctype="multipart/form-data">
<input type="text" name="username">
<input type="file" name="myFile">
<input type="submit" value="提交">
</form>
</body>
</html>

Flask-Session 简单使用的更多相关文章

  1. flask-admin章节四:flask session的使用

    1. 关于session flask session可能很多人根本都没有使用过,倒是cookie大家可能使用得比较多.flask cookie使用起来比较简单,就两个函数,读取和设置. 具体使用方式如 ...

  2. Flask的简单认识

    Flask的简单认识 Flask是轻量级的框架,适用于简单的程序 与Django的比较: Django: 无socket,中间件,路由,视图(CBV,FBV),模板,ORM, cookie,sessi ...

  3. Flask session到期时间设置 用户登录与登出

    flask版本 1.1.1 最近学习Flask开发,看官方文档产生疑问,就是session有效期的问题,默认貌似是没有有效期的,只有关闭浏览器session才会失效,其实控制session的有效期非常 ...

  4. Flask Session 详解

    会话session ,允许你在不同请求 之间储存信息.这个对象相当于用密钥签名加密的 cookie ,即用户可以查看你的 cookie ,但是如果没有密钥就无法修改它. from flask impo ...

  5. Flask Session 使用和源码分析 —— (6)

    基本使用 from flask import Flask, session, redirect, url_for, escape, request app = Flask(__name__) @app ...

  6. 11.4 Flask session,闪现

    session 加密后放在用户浏览器的 cookie 中 于django 的自带session 不同,flask 的 session 需要导入 from flask import session 添加 ...

  7. flask session

    flask session工作机制: 把敏感数据经过加密后放入到‘session’中,然后在把'session'存放到cookie中,下次请求的时候,再从浏览器发送过来的cookie中读取sessio ...

  8. JavaWeb学习总结(十):Session简单使用

    一.Session简单介绍 在WEB开发中,服务器可以为每个用户浏览器创建一个会话对象(session对象),注意:一个浏览器独占一个session对象(默认情况下).因此,在需要保存用户数据时,服务 ...

  9. 【Flask】Flask Session操作

    ### session:1. session的基本概念:session和cookie的作用有点类似,都是为了存储用户相关的信息.不同的是,cookie是存储在本地浏览器,session是一个思路.一个 ...

  10. flask session 使用默认配置修改session不生效问题

    flask session相关 使用flask 默认sessio是存储在浏览器的cookie中,当请求返回时会将session写在cooKie中,但是在写的时候,默认并不是每次都重新写入 比如下例子 ...

随机推荐

  1. element-ui-verify使用

    element-ui-verify是对ElementUI原本的校验封装之后的插件,并不会影响使用ElementUI的原生校验. 使用环境为vue+element-ui+webpack模块环境,首先使用 ...

  2. 如何避免在IE内核时,按BackSpace时进行网页会进行回退

    //解决在IE浏览器中input被设置成readonly时,点击Backspace时会出现网页回退 document.onkeydown = check; function check(e) { va ...

  3. 微信小程序-滚动Tab选项卡

    前言:今天呢 给大家详细讲解一下滚动Tab选项卡:左右可滑动切换的效果,希望对大家做项目时候有用! 以前也遇到过这个,但是没有做记录.转载来源于:https://www.jianshu.com/p/9 ...

  4. Python多线程实例

    前言 感觉理解python多线程用“切换”和“共享”就差不多了.这里就贴上一个抢车票的小小实例,还有自己在编程过程中遇到的坑..... 实例:抢车票 抢车票有三类人:会员.弄了加速包.普通人. 说说区 ...

  5. linux 怎么与网络对时

    首先来了解下面几个知识点:1. date命令:#date显示系统时间2.hwclock命令 (即hardwareclock系统硬件时间)#hwclock显示硬件时间#hwclock -w将系统时间写入 ...

  6. intellij与eclipse默认快捷键对比

    最近想用intellij,于是找找快捷键.用惯了eclipse,都不太适应intellij的快捷键.慢慢的就适应了常用的快捷键 Idea 与 Eclipse 快捷键的区别,上为Eclipse的快捷键, ...

  7. HttpClient 302重定向

    CloseableHttpClient是线程安全的,单个实例可用于处理多个HTTP请求,Http Client会自动处理所有的重定向,关闭自动重定向需要设定disableAutomaticRetrie ...

  8. 29.python环境搭建

    新的笔记本上搭建的python运行环境:1.首先现在下载python版本,我这里拿的是之前用的3.5老版本 2.双击安装(勾选 add Python3.5 to path) 3.检测是否安装成功 4. ...

  9. 69.纯 CSS 创作一个单元素抛盒子的 loader

    原文地址:https://segmentfault.com/a/1190000015470411#articleHeader0 HTML code: <div class="loade ...

  10. C# ADO.NET中设置Like模糊查询的参数

    ADO.NET进行参数化时会自动将参数值包含在单引号中,除了特殊需求,最好不要自己手动添加单引号.ADO.NET中识别参数标识是使用符号@,如果在SQL语句中将参数标识放在单引号中,单引号中的参数标识 ...