Flask写web时cookie的处理
本文来自网易云社区
作者:孙圣翔
flask是一个微型web开发框架,别看他微型,在github上排名还是挺高的。
A microframework based on Werkzeug, Jinja2 and good intentions
http://flask.pocoo.org/
因为他微型,容易掌握,所以对于一些控制欲很强的人,比如我,就会放弃强大的dinjgo,而转向flask。
flask的入门教程,看网页的就好。 中文 英文,既然有文档了,我就不从来一遍了。
这篇文章只说cookie的使用,以及我使用时的一些经验
cookie的使用
虽说cookie是存储在客户端的,但存储的方式和内容还是server去定。官网的介绍
存储cookie
Chrome有个插件EditThisCookie还不错,方便开发的时候调试。
设置cookie的代码如下
resp = flask.make_response(render_template(...))
resp.set_cookie('username', 'the username')
cookie是有过期时间的,默认多少,我实在记不得了。如果需要设定cookie的时间,可以通过
outdate = datetime.datetime.today() + datetime.timedelta(days=30)
resp.set_cookie('username', 'the username', expires=outdate)
如果想清空cookie,只有一个办法resp.set_cookie('username', '', expires=0)
cookie还可以指定具体的路径什么的,不过一般直接默认的就可以。 详细的参考这里
读取cookie
读取比较简单
request.cookies.get('username')
因为request在jinja模板中是可以直接使用的,所以可以简单的写到html中
<!DOCTYPE html><html><body>username: {{request.cookies.get('username')}}</body></html>
jinja能直接用的变量还有很多。
进阶篇 由flask官网提供。
网易云免费体验馆,0成本体验20+款云产品!
更多网易研发、产品、运营经验分享请访问网易云社区。
相关文章:
【推荐】 HTTP/2部署使用
【推荐】 IOS渠道追踪方式
Flask写web时cookie的处理的更多相关文章
- VS中,添加完Web引用(WebServer引用/Web服务引用),写代码时引用不到
VS中,添加完Web引用(WebServer引用/Web服务引用),写代码时引用不到 添加完之后要等一会儿 等一会儿 等一会儿 就有了
- 仿flask写的web框架
某大佬仿flask写的web框架 web_frame.py from werkzeug.local import LocalStack, LocalProxy def get_request_cont ...
- JavaSE 手写 Web 服务器(一)
原文地址:JavaSE 手写 Web 服务器(一) 博客地址:http://www.extlight.com 一.背景 某日,在 Java 技术群中看到网友讨论 tomcat 容器相关内容,然后想到自 ...
- [ Python ] Flask 基于 Web开发 大型程序的结构实例解析
作为一个编程入门新手,Flask是我接触到的第一个Web框架.想要深入学习,就从<FlaskWeb开发:基于Python的Web应用开发实战>这本书入手,本书由于是翻译过来的中文版,理解起 ...
- web中cookie和session_转
转自:Python爬虫番外篇之Cookie和Session python修行路 关于cookie和session估计很多程序员面试的时候都会被问到,这两个概念在写web以及爬虫中都会涉及,并且两者可 ...
- sharepoint 2010 在aspx 写lambda 时错误
在sharepoint 2010 中,写lambda时,遇到错误.在aspx里面,写lambda表达式, 运行时报错,就不明道理了.经过百般测试,终于找到方法: 错误提示: "/" ...
- HTTP网络协议与手写Web服务容器
Http协议 1.深入概念 Http:HyperText Transfer Protocol,即是超文本传输协议. 2.浅出概念(使用浏览器访问服务器端网页时需要遵循的一系列规则) Http:将各种不 ...
- python写service时全局变量问题
在尝试用flask写service的过程中,我发现全局变量使用虽然很方便,但其实是很冒险的. 本次我使用的是声明global变量的方式,如果作为本地的单次使用的程序来说,确实没有问题并且很好用,对于竞 ...
- Flask教程 —— Web表单(上)
第二章中介绍的request对象公开了所有客户端发送的请求信息.特别是request.form可以访问POST请求提交的表单数据. 尽管Flask的request对象提供的支持足以处理web表单,但依 ...
随机推荐
- 事件调度器及C++中的使用
转自:http://blog.ch-wind.com/ue4-event-dispatcher-and-delegate/ 事件调度器非常的适合在各个蓝图之间实现通信功能. 当前UE4版本4.8.3. ...
- js作用域和作用域链
作用域 首先要知道一点,js跟python都是一样的,先编译后执行 唯一的区别在于,js对于只声明,未定义的变量,报错是未定义,后面代码会有这个例子 编译的过程只有赋值和开辟空间的过程 只有函数,类才 ...
- BigDecimal进行精确运算demo工具类
package com.js.ai.modules.pointwall.interfac; import java.math.BigDecimal; public class TestDigDecim ...
- js中的Generators函数
js中的Generators函数 generator一般操作 generator函数的作用就是函数体分段执行,yield表示分隔点 function *test() { console.log(1); ...
- flask系列六之模型分文件
1.分开models的目的:为了让代码更加方便的管理. 2.如何解决循环引用:把db放在一个单独的文件中,切断循环引用的线条就可以了. (1)避免循环引用 解决循环引用 主文件:main.py fro ...
- Android 4 学习(16):Database and Content Providers
参考<Professional Android 4 Development> Database and Content Providers Android Database简介 Andro ...
- Visual C++ Samples-------------Code Project
https://msdn.microsoft.com/en-us/library/hyds2fy1(v=vs.80).aspx
- C# XML文件操作
C# XML文件操作 运行环境:Window7 64bit,.NetFramework4.61,C# 6.0: 编者:乌龙哈里 2017-02-09 参考 LINQ to XML System.Xml ...
- 最长回文子串(Mirrored String II)
Note: this is a harder version of Mirrored string I. The gorillas have recently discovered that the ...
- Django详细介绍
课程简介: Django流程介绍 Django url Django view Django models Django template Django form Django admin (后台数据 ...