Flask2 框架知识点汇总(状态保持机制(session)/请求钩子/路由变量/j脚本启动/模块)(相互学习 有梦,有青春)

flask框架2

一. 状态保持

0. cookie细节

  • 一旦保存了cookie数据,访问该网站的任意路由时,cookie数据都会被发送
  • 同源策略: cookie数据`只会发送给生成该cookie的网站
  • cookie通过js也可以存取

1. Session实现 (重点)

  • 特点:
    。数据保存在服务端(一般放在服务器的数据库中)
    。session依赖cookie机制
  • 场景:
    。适合存放重要/敏感的数据,安全性更高
    。交互过程
    浏览器的交互过程

– 登录流程
在这里插入图片描述

  • 查看监听端口对应的PID lsof -i:端口号
  • sesstion实现
    在这里插入图片描述

2.Session细节

base64.b64encode(os.urandom(40))

os.urandom(生成一个随机二进制数据),base64.b64编码二进制,配合使用可以对保存在client的cookie中的sid加密生成加密密码(app.secret_key = “test”)

  • session设置过期时间

# 允许session设置过期时间 默认不允许 如果允许, 默认过期时间为31天
session.permanent = True

#设置session的过期时间
app.permanent_session_lifetime = timedelta(hours=1)

  • session 删除数据

# 删除session数据 类似字典的操作 设置默认值后, 即使key不存在, 也不会报错
session.pop(“username”, None)

  • flask中默认的session机制
  • 默认会将session数据加密后保存到cookie中,和传统的session存储机制(数据保存到服务器的数据库中)不同

二.高级处理

1.上下文

在这里插入图片描述

2.请求钩子

  • before_request 和 after_request
    在这里插入图片描述
  • before_first_request 和 teardown_request
    在这里插入图片描述

3.路由变量

3.1 绑定动态URL(重点)

在这里插入图片描述

3.2 正则转换器

在这里插入图片描述

  • 导航区操作
    在这里插入图片描述

参数和配置

1.Flask()参数

在这里插入图片描述

2.Flask应用配置

在这里插入图片描述

四.脚本启动

  • 如何在服务器上运行 web应用
    在这里插入图片描述
  • 脚本启动组件 flask-script 可以生成启动web应用命令,而这个命令可以通过选项的形式来配置ip和端口号
  • 安装组件 pip install flask-script
    在这里插入图片描述
  • 启动web应用的命令 python xx.py runserver -h 0.0.0.0 -p 8000 -d----runserver -? 可以看到需要操作命令,如 ([-?] [-h HOST] ,-d, --debug
  • pycharm使用脚本启动组件来运行程序
    在这里插入图片描述

五.模块

1.使用jinja2进行模板渲染(重点)

  • 设置模板文件夹
    。# 模板渲染: 对html对进行内容替换
    # flask中提供了jinja2框架来实现模板渲染 底层也是正则表达式
    在这里插入图片描述
  • 设置模板语言
    。flask中自带了jinja2
    在这里插入图片描述
  • 使用jingjia2进行模板渲染
    。写模板地址的时候会提示,如果没有提示,查看Mark directory 是否变为紫色
    在这里插入图片描述
模板渲染学习见下一篇((前面知识点见详Flask1))
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值