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 29 Python
Python中endswith()函数的基本使用
Apr 07 Python
Python实现的数据结构与算法之双端队列详解
Apr 22 Python
基于Python的关键字监控及告警
Jul 06 Python
Python内建函数之raw_input()与input()代码解析
Oct 26 Python
Python中列表与元组的乘法操作示例
Feb 10 Python
Python实现的线性回归算法示例【附csv文件下载】
Dec 29 Python
pyqt5实现按钮添加背景图片以及背景图片的切换方法
Jun 13 Python
解决pyecharts运行后产生的html文件用浏览器打开空白
Mar 11 Python
python爬虫实现获取下一页代码
Mar 13 Python
解决python运行效率不高的问题
Jul 20 Python
Python 列表推导式需要注意的地方
Oct 23 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的安全策略
2006/10/09 PHP
php中使用临时表查询数据的一个例子
2013/02/03 PHP
浅谈php命令行用法
2015/02/04 PHP
教你在PHPStorm中配置Xdebug
2015/07/27 PHP
php session的应用详细介绍
2017/03/22 PHP
php读取和保存base64编码的图片内容
2017/04/22 PHP
详解PHP素材图片上传、下载功能
2019/04/12 PHP
JS代码放在head和body中的区别分析
2011/12/01 Javascript
用Jquery实现滚动新闻
2014/02/12 Javascript
JavaScript将当前时间转换成UTC标准时间的方法
2015/04/06 Javascript
使用jspdf生成pdf报表
2015/07/03 Javascript
jQuery实现动画效果circle实例
2015/08/06 Javascript
JQuery validate插件Remote用法大全
2016/05/15 Javascript
Javascript中获取浏览器类型和操作系统版本等客户端信息常用代码
2016/06/28 Javascript
JS优化与惰性载入函数实例分析
2017/04/06 Javascript
jquery使用iscorll实现上拉、下拉加载刷新
2017/10/26 jQuery
js中apply和Math.max()函数的问题及区别介绍
2018/03/27 Javascript
详解Vue基于 Nuxt.js 实现服务端渲染(SSR)
2018/04/05 Javascript
Javascript实现运算符重载详解
2018/04/07 Javascript
vue的keep-alive用法技巧
2019/08/15 Javascript
微信小程序webview与h5通过postMessage实现实时通讯的实现
2019/08/20 Javascript
vue实现广告栏上下滚动效果
2020/11/26 Vue.js
webpack4从0搭建组件库的实现
2020/11/29 Javascript
Python3实现爬取指定百度贴吧页面并保存页面数据生成本地文档的方法
2018/04/22 Python
使用python验证代理ip是否可用的实现方法
2018/07/25 Python
Python爬虫——爬取豆瓣电影Top250代码实例
2019/04/17 Python
在python中利用try..except来代替if..else的用法
2019/12/19 Python
在keras里实现自定义上采样层
2020/06/28 Python
python 中的命名空间,你真的了解吗?
2020/08/19 Python
python之随机数函数的实现示例
2020/12/30 Python
Smallable意大利家庭概念店:设计师童装及家居装饰
2018/01/08 全球购物
Tessabit日本:集世界奢侈品和设计师品牌的意大利精品买手店
2020/01/07 全球购物
文员个人求职自荐信
2013/09/21 职场文书
大学同学十年聚会感言
2014/02/21 职场文书
2015年音乐教研组工作总结
2015/07/22 职场文书
2019年作为一名实习生的述职报告
2019/09/29 职场文书