Sanic框架Cookies操作示例


Posted in Python onJuly 17, 2018

本文实例讲述了Sanic框架Cookies操作。分享给大家供大家参考,具体如下:

简介

Sanic是一个类似Flask的Python 3.5+ Web服务器,它的写入速度非常快。除了Flask之外,Sanic还支持异步请求处理程序。这意味着你可以使用Python 3.5中新的闪亮的异步/等待语法,使你的代码非阻塞和快速。

在上一篇《Sanic框架配置》中已经讲到,如何在Sanic进行相关的配置,接下来将介绍一下Sanic的Cookies的使用,Cookies是用户浏览器内部的一些数据,Sanic可以写入和读取存储为键值对的Cookie

写入Cookies

在返回响应时,可以在Response对象上设置Cookie:

from sanic.response import text
@app.route("/set_cookie")
async def set_cookie(request):
  response = text("set cookie success")
  response.cookies["test"] = "test"
  return response

Cookie可以像字典一样设置,并且具有如下参数:

  • expires:过期时间,Cookie在客户端浏览器上过期的时间
  • path:此Cookie使用的URL的子集。默认为/
  • comment:评论(元数据)
  • domain:Cookie的有效域
  • max-age:Cookie的活跃秒数
  • secure:指定Cookie是否仅通过HTTPS发送
  • httponly:指定Cookie是否不能被Javascript读取

举个例子:

@app.route("/set_cookie")
async def set_cookie(request):
  response = text("set cookie success")
  response.cookies["test"] = "test"
  response.cookies["test"]["max-age"] = 10
  return response

设置此Cookie的活跃秒数为10,反复获取此Cookie会发现,过了10s后此Cookie不存在了

读取Cookies

用户的Cookie可以通过Request对象的cookies字典进行访问:

from sanic.response import text
@app.route("/get_info")
async def get_info(request):
  test = request.cookies.get("test")
  return text("cookie:{}".format(test)

删除Cookies

可以在语义上或明确的删除Cookie

from sanic.response import text
@app.route("/del_info")
async def del_info(request):
  response = text("delete cookie success")
  del response.cookies["test"]
  return response

更多关于Python相关内容可查看本站专题:《Python入门与进阶经典教程》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》及《Python文件与目录操作技巧汇总》

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
Python实现多行注释的另类方法
Aug 22 Python
在GitHub Pages上使用Pelican搭建博客的教程
Apr 25 Python
Python的爬虫包Beautiful Soup中用正则表达式来搜索
Jan 20 Python
python SMTP实现发送带附件电子邮件
May 22 Python
解决pycharm运行程序出现卡住scanning files to index索引的问题
Jun 27 Python
python3.7 的新特性详解
Jul 25 Python
python爬虫豆瓣网的模拟登录实现
Aug 21 Python
python、PyTorch图像读取与numpy转换实例
Jan 13 Python
python打包多类型文件的操作方法
Sep 21 Python
Python 使用SFTP和FTP实现对服务器的文件下载功能
Dec 17 Python
Python+Opencv实现把图片、视频互转的示例
Dec 17 Python
Numpy中的数组搜索中np.where方法详细介绍
Jan 08 Python
Sanic框架配置操作分析
Jul 17 #Python
Sanic框架蓝图用法实例分析
Jul 17 #Python
PyCharm设置SSH远程调试的方法
Jul 17 #Python
Flask框架通过Flask_login实现用户登录功能示例
Jul 17 #Python
pycharm远程linux开发和调试代码的方法
Jul 17 #Python
Flask框架各种常见装饰器示例
Jul 17 #Python
详解基于django实现的webssh简单例子
Jul 17 #Python
You might like
PHP获得用户使用的代理服务器ip即真实ip
2006/12/31 PHP
探讨:如何通过stats命令分析Memcached的内部状态
2013/06/14 PHP
PHP获取QQ达人QQ信息的方法
2015/03/05 PHP
解决laravel groupBy 对查询结果进行分组出现的问题
2019/10/09 PHP
根据分辩率调用不同的CSS.
2007/01/08 Javascript
javascript使用eval或者new Function进行语法检查
2010/10/16 Javascript
JQuery动态创建DOM、表单元素的实现代码
2011/08/09 Javascript
JS及PHP代码编写八大排序算法
2016/07/12 Javascript
H5用户注册表单页 注册模态框!
2016/09/17 Javascript
微信小程序 实例应用(记账)详解
2016/09/28 Javascript
JavaScript实现向select下拉框中添加和删除元素的方法
2017/03/07 Javascript
jQuery判断邮箱格式对错实例代码讲解
2017/04/12 jQuery
微信小程序判断页面是否从其他页面返回的实例代码
2019/07/03 Javascript
如何使用50行javaScript代码实现简单版的call,apply,bind
2019/08/14 Javascript
浅谈Webpack4 Tree Shaking 终极优化指南
2019/11/18 Javascript
JavaScript实现简单日历效果
2020/09/11 Javascript
Vue双向数据绑定(MVVM)的原理
2020/10/03 Javascript
[01:00:30]TFT vs VGJ.T Supermajor 败者组 BO3 第一场 6.5
2018/06/06 DOTA
[01:14]英雄,所敬略同——2018完美盛典宣传视频
2018/12/05 DOTA
python实现批量获取指定文件夹下的所有文件的厂商信息
2014/09/28 Python
python编写简单爬虫资料汇总
2016/03/22 Python
python条件变量之生产者与消费者操作实例分析
2017/03/22 Python
python+selenium实现163邮箱自动登陆的方法
2017/12/31 Python
计算机二级python学习教程(3) python语言基本数据类型
2019/05/16 Python
python查看文件大小和文件夹内容的方法
2019/07/08 Python
基于YUV 数据格式详解及python实现方式
2019/12/09 Python
关于Pytorch的MNIST数据集的预处理详解
2020/01/10 Python
Python : turtle色彩控制实例详解
2020/01/19 Python
详解python常用命令行选项与环境变量
2020/02/20 Python
使用Python打造一款间谍程序的流程分析
2020/02/21 Python
Python实现淘宝秒杀功能的示例代码
2021/01/19 Python
阿联酋优惠券服务:Living Kool
2019/12/12 全球购物
合作投资意向书
2014/04/01 职场文书
行政秘书工作自我鉴定
2014/09/15 职场文书
初中家长评语和期望
2014/12/26 职场文书
2016年十一促销广告语
2016/01/28 职场文书