cookie是保存在客户端电脑中一种文本形式的数据. 它的作用是记录并追踪客户端使用方面的数据, 用于统计数据和达到更好的用户体验.

Flask的全局request对象包含了cookie属性, 它是个字典对象, 其键值对就是客户端收到的cookie的名称和值. 并且, cookie还记录了自己的过期时间, 路径, 以及网站域名.

在Flask中, 返回响应对象中会设置cookie对象, 我们可以使用make_response()方法来从一个返回值或视图函数中获得一个响应对象. 然后, 可以使用响应对象的set_cookie()方法来设置储存cookie.

读取cookie也很简单, request.cookiesget()方法可以从请求中读取一个cookie.

下面的应用中, 当我们进入URL '/' 时, 一个带有简单表单的页面被打开:

@app.route('/')
def index():return render_template('index.html')

下面的HTML中, index.html包含一个简单表单:

<html><body><form action = "/setcookie" method = "POST"><p><h3>Enter userID</h3></p><p><input type = 'text' name = 'nm'/></p><p><input type = 'submit' value = 'Login'/></p></form></body>
</html>

这个表单被post到URL'/setcookie', 相关的视图函数设置了一个名为userId的cookie, 并渲染了另一个页面.

@app.route('/setcookie', methods = ['POST', 'GET'])
def setcookie():if request.method == 'POST':user = request.form['nm']resp = make_response(render_template('readcookie.html'))resp.set_cookie('userID', user)return resp

readcookie.html 包含了一个链接到另一个视图函数getcookie()的超链接. 这个函数读取我们之前设置的cookie并展示在浏览器中.

[译]Flask教程--Cookie相关推荐

  1. [译]Flask教程--将表单数据发送到模板

    之前我们已经看到在Flask中我们可以给URL规则指定http方法, 对应的函数可以按字典形式接收表单数据, 然后将这些数据输送到模板中并最终渲染为网页. 在下面的例子中, URL '/' 渲染一个含 ...

  2. Python Flask教程学习01

    教程来源于w3cschool,我跟着敲一遍,做一遍 Flask是一个轻量级的可定制框架,使用Python语言编写,较其他同类型框架更为灵活.轻便.安全且容易上手.它可以很好地结合MVC模式进行开发,开 ...

  3. Python Flask教程学习02

    书接上文Python Flask教程学习01 文章目录 Flask 教程 Flask 会话 Flask 消息闪现 Flask 文件上传 Flask 扩展/寻找扩展 Flask 教程 Flask 会话 ...

  4. [译]Vulkan教程(05)Instance

    [译]Vulkan教程(05)Instance Creating an instance 创建一个instance The very first thing you need to do is ini ...

  5. [译]Vulkan教程(04)基础代码

    [译]Vulkan教程(04)基础代码 General structure 通用结构 In the previous chapter you've created a Vulkan project w ...

  6. [译][Tkinter 教程10] Text 控件

    已获原作者授权. 原系列地址: Python Tkinter 简介及简例 Text 控件用来显示多行文本. Tkinter 的 Text 控件很强大, 很灵活, 可以实现很多功能. 虽然这个控件的主要 ...

  7. [译]Vulkan教程(32)生成mipmap

    [译]Vulkan教程(32)生成mipmap Generating Mipmaps 生成mipmap Introduction 入门 Our program can now load and ren ...

  8. [译][Tkinter 教程14] menu 菜单

    已获原作者授权. 原系列地址: Python Tkinter 简介 一提到"menu"这个词, 很多人首先想到的是餐馆里的菜单. 虽然餐馆菜单和计算机程序中的菜单看起来一点也不像, ...

  9. [译][Tkinter 教程02] Message 控件

    已获原作者授权. 原系列地址: Python Tkinter Message 控件 Message 控件用来展示一些文字短消息. Message 和 Label 控件有些类似, 但在展示文字方面比 L ...

最新文章

  1. 围绕云计算 虚拟化技术又呈现新面貌
  2. 笔记-信息系统安全管理-计算机信息安全保护等级划分准则
  3. SystemCenter2012SP1实践(19)集成WSUS更新服务器2012
  4. 教你玩转CSS margin(外边距)
  5. 报错,Exception: Required request body is missing: public org.springframework.ui.ModelMap cn.yihuazt.co
  6. 微软版UnityVs横空出世,究竟是谁成就了谁?
  7. virtualenv 指定 python 解释器的版本
  8. screen乱码问题
  9. 在QT中配置snap7库
  10. Hi3519av100 编译kernel
  11. exsi rh2288hv5 驱动_华为服务器RH2288H V3 引导ServiceCD安装Windows系统方
  12. ESP32 使用 Arduino 实现 OTA 更新
  13. SSM整合练习:记账管理
  14. 新手做饮料代理如何运作市场?
  15. 国家气象局天气API使用
  16. 字符串_字符串的复制
  17. 激扬十载,筑梦远航|智和信通2022踔厉奋发新征程,笃行不怠向未来
  18. 双拼输入法,设计方案
  19. 开心一笑 最近没什么要更新的 准备不干程序了
  20. BIM Revit2016下载安装教程

热门文章

  1. 禁用计算机服务,适当禁用系统服务 提升计算机运行速度
  2. matlab论坛真不活跃,MATLAB中文论坛常见问题归纳
  3. mac android 找不到设备管理器,Android Studio找不到连接设备解决方案
  4. linux 磁盘清理脚本,磁盘清理脚本
  5. discuz mysql配置文件_MySQL优化配置文件my.ini(discuz论坛)
  6. oracle12c asmfd,Oracle 12c新特性--ASMFD(ASM Filter Driver)特性
  7. 青州市2021年高考成绩查询,2021年青州市高考状元名单资料,今年青州市高考状元多少分...
  8. python操作库_python操作数据库
  9. modbus串口调试工具_用modscan测试modbus协议离散仪表数据方法
  10. 输入分数输出小数C语言,这是把小数转换成分数的程序,可是输入0.6666无限循环...