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编程线性回归代码示例
Dec 07 Python
python写入已存在的excel数据实例
May 03 Python
Python3.6通过自带的urllib通过get或post方法请求url的实例
May 10 Python
Python设计模式之代理模式实例详解
Jan 19 Python
Python数据类型之Dict字典实例详解
May 07 Python
python实现图片上添加图片
Nov 26 Python
Python数据存储之 h5py详解
Dec 26 Python
Python面向对象封装操作案例详解 II
Jan 02 Python
python网络编程socket实现服务端、客户端操作详解
Mar 24 Python
python 字典item与iteritems的区别详解
Apr 25 Python
基于Python和C++实现删除链表的节点
Jul 06 Python
Python+SeaTable实现计算两个日期间的工作日天数
Jul 07 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答题类应用接口实例
2015/02/09 PHP
Laravel中使用自己编写类库的3种方法
2015/02/10 PHP
thinkPHP2.1自定义标签库的导入方法详解
2016/07/20 PHP
ThinkPHP的SAE开发相关注意事项详解
2016/10/09 PHP
php基于curl实现的股票信息查询类实例
2016/11/11 PHP
YII2框架中查询生成器Query()的使用方法示例
2020/03/18 PHP
jQuery获取URL请求参数的方法
2015/07/18 Javascript
Bootstrap Table使用方法详解
2016/08/01 Javascript
jQuery实现的背景颜色渐变动画效果示例
2017/03/24 jQuery
微信小程序实现拖拽 image 触摸事件监听的实例
2017/08/17 Javascript
Vue+Vux项目实践完整代码
2017/11/30 Javascript
AngularJS日期格式化常见操作实例分析
2018/05/17 Javascript
js中this的指向问题归纳总结
2018/11/28 Javascript
Vue表情输入组件 微信face表情组件
2019/02/11 Javascript
pm2发布node配置文件ecosystem.json详解
2019/05/15 Javascript
在vue中使用axios实现post方式获取二进制流下载文件(实例代码)
2019/12/16 Javascript
用jQuery实现抽奖程序
2020/04/12 jQuery
three.js 制作动态二维码的示例代码
2020/07/31 Javascript
Python设计模式之观察者模式实例
2014/04/26 Python
Python判断值是否在list或set中的性能对比分析
2016/04/16 Python
Python实现替换文件中指定内容的方法
2018/03/19 Python
详解Python对JSON中的特殊类型进行Encoder
2019/07/15 Python
HTML5仿微信聊天界面、微信朋友圈实例代码
2018/01/29 HTML / CSS
预订奥兰多和佛罗里达州公园门票:FloridaTix
2018/01/03 全球购物
英国手机零售商:Carphone Warehouse
2018/06/06 全球购物
澳大利亚在线家具、灯饰和家居装饰店:LivingStyles
2018/11/20 全球购物
英国卫浴商店:Ergonomic Design
2019/09/22 全球购物
医学院毕业生自荐信范文
2014/03/06 职场文书
单位单身证明样本
2014/10/11 职场文书
党的群众路线教育实践活动批评与自我批评范文
2014/10/16 职场文书
学校党的群众路线教育实践活动总结材料
2014/10/30 职场文书
2014年关工委工作总结
2014/11/17 职场文书
2015年保卫科工作总结
2015/05/14 职场文书
导游词之西安骊山
2019/12/03 职场文书
浅谈Redis的几个过期策略
2021/05/27 Redis
SpringBoot+Redis实现布隆过滤器的示例代码
2022/03/17 Java/Android