- Python Falcon教程
- Python Falcon - 主页
- Python Falcon - 简介
- Python Falcon - 环境设置
- Python Falcon - WSGI 与 ASGI
- Python Falcon - Hello World(WSGI)
- Python Falcon - 女服务员
- Python Falcon - ASGI
- 蟒蛇Falcon - Uvicorn
- Python Falcon - API 测试工具
- 请求与响应
- Python Falcon - 资源类
- Python Falcon - 应用程序类
- Python Falcon - 路由
- Falcon - 后缀响应者
- Python Falcon - 检查模块
- Python Falcon - Jinja2 模板
- Python Falcon - cookie
- Python Falcon - 状态代码
- Python Falcon - 错误处理
- Python Falcon - 钩子
- Python Falcon - 中间件
- Python Falcon - CORS
- Python Falcon - Websocket
- Python Falcon - Sqlalchemy 模型
- Python Falcon - 测试
- Python Falcon - 部署
- Python Falcon 有用资源
- Python Falcon - 快速指南
- Python Falcon - 有用的资源
- Python Falcon - 讨论
Python Falcon - cookie
cookie 以文本文件的形式存储在客户端的计算机上。其目的是记住和跟踪与客户使用情况相关的数据,以获得更好的访问者体验和网站统计数据。
Request 对象包含 cookie 的属性。它是客户端传输的所有 cookie 变量及其相应值的字典对象。除此之外,cookie 还存储其到期时间、站点路径和域名。
在 Falcon 中,cookie 是使用set_cookie()方法在响应对象上设置的。
resp.set_cookie('cookiename', 'cookievalue')
此外,还可以给出 cookie 的max_age (以秒为单位)和域名的参数。
import falcon import json from waitress import serve class resource1: def on_post(self, req, resp): resp.set_cookie("user", 'admin') resp.text = "cookie set successfully." resp.status = falcon.HTTP_OK resp.content_type = falcon.MEDIA_TEXT
从命令行调用响应者方法:
http POST localhost:8000/cookie HTTP/1.1 200 OK Content-Length: 24 Content-Type: text/plain; charset=utf-8 Date: Tue, 26 Apr 2022 06:56:30 GMT Server: waitress Set-Cookie: user=admin; HttpOnly; Secure cookie set successfully.
cookie Set-cookie 头也可以使用响应对象的append_header()方法来设置。
要检索 cookie,请求对象具有request.cookies属性以及get_cookie_values()方法。
def on_get(self, req, resp): cookies=req.cookies values = req.get_cookie_values('user') if values: v = values[0] resp.body={"user":v} resp.status = falcon.HTTP_OK resp.content_type = falcon.MEDIA_JSON
响应对象的unset_cookie方法清除当前请求的cookie。
resp.unset_cookie('user')
对于 ASGI 应用程序,falcon.asgi.Request实现与falcon.Request相同的 cookie 方法和属性。ASGI 版本的set_cookie()和append_header()是同步的,因此不需要等待它们。