Skip to main content
 首页 » 编程设计

python之简单的服务器端 Flask session 变量

2025年05月04日22lvdongjie

在 Flask 中拥有服务器端 session 变量的最简单方法是什么?

Variable value:

  1. A simple string
  2. Not visible to the client (browser)
  3. Not persisted to a DB -- simply vanishes when the session is gone

有一个内置的 Flask session ,但是它将 session 数据发送给客户端:

session["secret"] = "I can see you" 

数据经过 Base64 编码并在加密签名的 cookie 中发送,但在客户端读取仍然很容易。

在许多框架中,创建服务器端 session 变量是一行代码,例如:

session.secret = "You can't see this" 

到目前为止,我发现的 Flask 解决方案非常笨重,并且适合处理大块数据。有没有简单的轻量级解决方案?

请您参考如下方法:

我认为 Flask-Session扩展名正是您要找的。

Flask-Session is an extension for Flask that adds support for Server-side Session to your application.

来自链接的网站:

from flask import Flask, session 
from flask_session import Session  # new style 
# from flask.ext.session import Session  # old style 
 
app = Flask(__name__) 
# Check Configuration section for more details 
SESSION_TYPE = 'redis' 
app.config.from_object(__name__) 
Session(app) 
 
@app.route('/set/') 
def set(): 
    session['key'] = 'value' 
    return 'ok' 
 
@app.route('/get/') 
def get(): 
    return session.get('key', 'not set')