17、Flask实战第17天:Flask-cookie
cookie的基本概念
在网站中,http请求是无状态的。也就是说即使第一次和服务器连接并且登录成功后,第二次请求服务器依然不能知道当前请求的是哪个用户。 cookie的出现就是为了解决这个问题,第一次登录后服务器返回一些数据库(cookie)给浏览器,然后浏览器保存在本地,当该用户发送第二次请求的时候,就会自动把上次请求存储的cookie数据自动的携带给服务器,服务器通过浏览器携带的数据就能判断当前用户是哪个了。cookie存储的数量有限,不同的浏览器有不同的存储大小,但一般不超过4kb。因此使用cookie只能存储一些小量的数据。
Flask设置和删除cookie
设置cookie
设置cookie应该在Response的对象上设置, flask.Response对象有一个set_cookie方法,可以通过这个方法来设置cookie信息
- key:键
- value:值
- max_age:设置过期时间(秒)
- expires:设置过期时间,时间戳的形式(1970离现在的时间)
- path:当前主域名
- domain:子域名
- secure: 如果为True,则要使用https
- httponly: 是否允许JS访问cookie,默认为Flase,表示允许,这是一个扩展的cookie标准,可能不支持所有浏览器
- samesite: 限制cookie 的范围
浏览器访问首页,按F12,查看cookie
删除cookie
设置cookie的有效期
* max_age:以秒为单位,距离现在多少秒后cookie会过期。
* expires:为datetime类型。这个时间需要设置为格林尼治时间,也就是要距离北京少8个小时的时间。
* 如果max_age和expires都设置了,那么这时候以max_age为标准。
* max_age在IE8以下的浏览器是不支持的。expires虽然在新版的HTTP协议中是被废弃了,但是到目前为止,所有的浏览器都还是能够支持,所以如果想要兼容IE8以下的浏览器,那么应该使用expires,否则可以使用max_age。
* 默认的过期时间:如果没有显示的指定过期时间,那么这个cookie将会在浏览器关闭后过期。
设置cookie的有效域名
flask如何配置子域名请 进入 子域名配置
ookie默认是只能在主域名下使用。如果想要在子域名下使用,那么应该给`set_cookie`传递一个`domain='.heboan.com'`,这样其他子域名才能访问到这个cookie信息
最新文章
- 解决win7系统重启后ip丢失问题,即每次电脑重启都要重新设置ip地址,重启后ip地址没了
- ios如何在#import方面提升编译性能
- Mac系统 安装SVN
- oracle 脱敏和加密
- 【BZOJ1003】【ZJOI2006】物流运输
- flume-ng 集群搭脚本
- tp-link便携式路由器固件升级方式
- ubuntu&;FAQ
- Regex sumologic
- IE8及其以下浏览器关于圆角表框的问题
- [Swift]LeetCode836. 矩形重叠 | Rectangle Overlap
- iptables禁止某个mac地址上网
- size_t的使用
- Android跳转WIFI界面的四种方式
- sql面试题-----行转列
- Ceph分布式存储-原理介绍及简单部署
- linux学习第三天 (Linux就该这么学)
- 【系统架构】亿级Web系统搭建(1):Web负载均衡
- UIKit 框架之WebView
- Codeforces round 1111
热门文章
- [NOIP2018 TG D2T2]填数游戏
- BZOJ_day4&;&;DSFZ_day1
- 解决IIS设置多个工作进程中Session失效的问题
- Visaul Studio 常用快捷键动画演示
- 为什么 Java中1000==1000为false而100==100为true?AND ";2+2=5";?
- [bzoj4515][Sdoi2016]游戏-树链剖分+李超线段树
- hdu 1509 Windows Message Queue (优先队列)
- 安装l Xposed Framework
- camera驱动框架分析(中)
- spring boot 注入 restTemplate