Sanic框架Cookies操作示例

作者:喷跑的豆子 时间:2022-12-24 05:29:04 

本文实例讲述了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程序设计有所帮助。

来源:https://blog.csdn.net/y472360651/article/details/80207717

标签:Sanic框架,Cookies
0
投稿

猜你喜欢

  • python代码过长的换行方法

    2022-12-25 07:19:59
  • Python学习之面向对象编程详解

    2023-10-12 18:48:46
  • 如何在一个广告旗帜里轮番显示时间长度不一的不同广告?

    2010-06-26 12:35:00
  • 如何创建并使用一个断开连接的记录集的数据访问页?

    2009-11-14 20:50:00
  • Python实现企业微信通知机器人的方法详解

    2021-03-12 09:56:02
  • oracle学习笔记(三)

    2012-01-05 19:28:42
  • 使用豆瓣源来安装python中的第三方库方法

    2023-10-09 08:53:42
  • python math模块使用方法介绍

    2021-06-20 23:44:01
  • Python-OpenCV深度学习入门示例详解

    2022-07-24 02:44:24
  • ASP+SQL Server构建网页防火墙

    2009-01-21 19:56:00
  • 利用python进行文件操作

    2022-01-09 10:49:51
  • Python自动扫雷实现方法

    2023-11-19 19:04:55
  • 人工神经网络算法知识点总结

    2023-05-16 11:36:06
  • Python配置文件管理之ini和yaml文件读取的实现

    2022-01-10 15:33:08
  • Python 可迭代对象 iterable的具体使用

    2021-08-28 08:24:32
  • python 线程的五个状态

    2021-05-15 10:24:33
  • SqlServer中的日期与时间函数

    2011-11-03 17:12:34
  • python机器学习MATLAB最小二乘法的两种解读

    2022-02-19 08:00:11
  • 如何完美的建立一个python项目

    2021-02-20 21:07:26
  • Python中的套接字编程是什么?

    2021-02-28 12:46:01
  • asp之家 网络编程 m.aspxhome.com