会话存储#
在应用程序使用期间存储与用户相关的信息通常很有用。例如,用户可能选择保存一个选项或被记住为已登录。此信息可以存储在客户端或服务器端,Quart 提供了一个系统,可以通过安全 Cookie 会话将信息存储在客户端。
永久会话#
默认情况下使用的 Cookie 不是永久的(浏览器会话结束时删除),要创建永久 Cookie,当会话被修改时,session.permanent
必须为 True
。要将此设置为默认值,请使用以下代码段:
@app.before_request
def make_session_permanent():
session.permanent = True
WebSockets#
会话可以与 WebSockets 一起使用,但关于 Cookie 有一个重要的注意事项。Cookie 只能在 HTTP 响应中设置,已接受的 WebSocket 连接无法返回 HTTP 响应。因此,默认实现基于 Cookie,在已接受的 WebSocket 连接期间进行的任何修改都会丢失。