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写的创建文件夹自定义函数mkdir()
Aug 25 Python
跟老齐学Python之开始真正编程
Sep 12 Python
在Python中使用PIL模块处理图像的教程
Apr 29 Python
Python的Django框架中TEMPLATES项的设置教程
May 29 Python
python 读写中文json的实例详解
Oct 29 Python
python之从文件读取数据到list的实例讲解
Apr 19 Python
python实现图片转字符小工具
Apr 30 Python
python爬虫实现POST request payload形式的请求
Apr 30 Python
Python字符串格式化f-string多种功能实现
May 07 Python
Python 整行读取文本方法并去掉readlines换行\n操作
Sep 03 Python
python super()函数的基本使用
Sep 10 Python
基于Python实现nc批量转tif格式
Aug 14 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
Linux下CoreSeek及PHP扩展模块的安装
2012/09/23 PHP
PHP生成网站桌面快捷方式代码分享
2014/10/11 PHP
Laravel框架实现的批量删除功能示例
2019/01/16 PHP
奇妙的js
2007/09/24 Javascript
javascript:void(0)的真正含义实例分析
2008/08/20 Javascript
Javascript 篱式条件判断
2008/08/22 Javascript
浏览器的JavaScript引擎的识别方法
2013/10/20 Javascript
无闪烁更新网页内容JS实现
2013/12/19 Javascript
判断window.onload是否多次使用的方法
2014/09/21 Javascript
js图片轮播特效代码分享
2015/09/07 Javascript
JS+CSS实现经典的左侧竖向滑动菜单效果
2015/09/23 Javascript
AngularJS基础 ng-dblclick 指令用法
2016/08/01 Javascript
全面解析Angular中$Apply()及$Digest()的区别
2016/08/04 Javascript
详解vue+vueRouter+webpack的简单实例
2017/06/17 Javascript
ES6下子组件调用父组件的方法(推荐)
2018/02/23 Javascript
vue改变对象或数组时的刷新机制的方法总结
2019/04/24 Javascript
NProgress显示顶部进度条效果及使用详解
2019/09/21 Javascript
解决Vue在Tomcat8下部署页面不加载的问题
2019/11/12 Javascript
在vue中created、mounted等方法使用小结
2020/07/21 Javascript
使用Python的Twisted框架编写简单的网络客户端
2015/04/16 Python
学习和使用python的13个理由
2019/07/30 Python
python实现加密的方式总结
2020/01/19 Python
Python sys模块常用方法解析
2020/02/20 Python
使用已经得到的keras模型识别自己手写的数字方式
2020/06/29 Python
pandas to_excel 添加颜色操作
2020/07/14 Python
Python编写万花尺图案实例
2021/01/03 Python
CSS3实现多背景模拟动态边框的效果
2016/11/08 HTML / CSS
HTML5的download属性详细介绍和使用实例
2014/04/23 HTML / CSS
美国餐厅用品和厨房设备批发网站:KaTom Restaurant Supply
2018/01/27 全球购物
护士毕业生自我鉴定
2014/02/08 职场文书
总经理助理岗位职责范本
2014/07/20 职场文书
交通事故协议书范本
2014/11/18 职场文书
雨花台导游词
2015/02/06 职场文书
答辩状格式范本
2015/05/22 职场文书
个人收入证明格式
2015/06/24 职场文书
个人销售励志奋斗口号
2019/12/05 职场文书